ハジメトーク最新記事

ハジメクリエイト社員による、日々の業務やトレンド、日常のアレコレについてお届けします。

もっと見る

「The “” scheme is not supported; supported schemes for mailer “smtp” are: “smtp”, “smtps”.」とエラーが出た場合の対処法

2024.12.03

どうもこんにちは塚本です。
Laravelでメール送信する際に以下のようなエラーが出たので、対処法を備忘録として残しておこうと思います。

The "" scheme is not supported; supported schemes for mailer "smtp" are: "smtp", "smtps". 

.envMAIL_MAILERの値をsmtpに設定しているのに、空文字が設定されてる的なエラーが出てしまいます。

対処法1:Symfony Mailerのバージョンを下げる

Symfony Mailer 7.2がLaravel11に完全対応していないようなので、composerでSymfony Mailerのバージョンを下げることで対応できました。

$ composer require "symfony/mailer:~7.1.0"

対処法2:.envの内容を修正する

Symfony Mailerのバージョンは暫定的なものだと思うので、.envの設定が間違っていないか確認してみてください。

MAIL_MAILER=smtp
MAIL_HOST=
MAIL_PORT=
MAIL_USERNAME=
MAIL_PASSWORD=
MAIL_ENCRYPTION=tls

SMTP認証でメール送信する場合は、MAIL_ENCRYPTIONの値をtlsにすることで正常にメール送信できました。

Laravel11のデフォルト設定

Laravel11では、.envのメール設定がデフォルトで以下のようになっています。

MAIL_MAILER=log
MAIL_HOST=127.0.0.1
MAIL_PORT=2525
MAIL_USERNAME=null
MAIL_PASSWORD=null
MAIL_ENCRYPTION=null
MAIL_FROM_ADDRESS="hello@example.com"
MAIL_FROM_NAME="${APP_NAME}"

MAIL_ENCRYPTIONの値がnullなので、MAIL_MAILERsmtpに変えただけで送信しようとするとエラーになってしまいますね。

メール送信がうまく行かない方は環境変数設定を確認してみてください!

参考サイト

この記事を書いた人

Sho Tsukamoto

Chief Programmer Sho Tsukamoto

2023年4月入社。Web職人のたまごです。 最近はもっぱらコーディングすることは少なく、LaravelやReact Nativeを用いたシステム開発をメインとしています。

Sho Tsukamotoの書いた記事一覧へ

ハジメクリエイトでは一緒に働く仲間を募集しています!

関連記事

    関連記事はありません。