Laravelアプリケーションで連絡フォームを送信するたびに、タイトルにエラーメッセージが表示されます。私はthis discussionの勧告に従ったが、php artisan cache:clear
とphp artisan config:cache
の後でさえも効果がなかった。応答コード220が必要ですが、コード "" with message "
.env
MAIL_DRIVER=smtp
MAIL_HOST=smtp.gmail.com
MAIL_PORT=587
[email protected]
MAIL_PASSWORD=password
MAIL_ENCRYPTION=ssl
のconfig/mail.php
<?php
return [
'driver' => env('MAIL_DRIVER', 'smtp'),
'host' => env('MAIL_HOST', 'smtp.gmail.org'),
'port' => env('MAIL_PORT', 587),
'from' => [
'address' => env('MAIL_FROM_ADDRESS', '[email protected]'),
'name' => env('MAIL_FROM_NAME', 'Example'),
],
'encryption' => env('MAIL_ENCRYPTION', 'tls'),
'username' => env('MAIL_USERNAME'),
'password' => env('MAIL_PASSWORD'),
'sendmail' => '/usr/sbin/sendmail -bs',
'markdown' => [
'theme' => 'default',
'paths' => [
resource_path('views/vendor/mail'),
],
],
];
私はwouldn」 'から' グローバルドキュメントからの印象の下にあった。ここでは、関連するコードです他のアドレスからのものがない限り発射できませんが、私のコントローラのメールでは、連絡先フォームに提供されたアドレスを 'from'として指定しました。エラーメッセージの詳細からのものではないようです。
問い合わせフォームは個別のビューが、メインページビューの下部ではありませんので、コントローラの機能は、PageControllerでに住んでいる
public function postContact(Request $request) {
$this->validate($request, [
'email' => 'required|email',
'subject' => 'required|min:3',
'message' => 'required|min:10'
]);
$data = array(
'email' => $request->email,
'subject' => $request->subject,
'mailbody' => $request->message
);
Mail::send('emails.contact', $data, function($message) use ($data) {
$message->from($data['email']);
$message->to('[email protected]');
$message->subject($data['subject']);
});
}
ポートを465から587に変更し、MAIL_ENCRYPTION = sslに変更しました。 また、Googleの設定から安全性の低いGoogleアプリを許可します。 – Gaurav
これは古いエラーを取り除きましたが、今はStreamBuffer.php行268でSwift_TransportExceptionが発生しています: ホストsmtp.gmail.com [#0]との接続を確立できませんでした – user968270
この回答を確認http:// stackoverflow .com/questions/32693528/expected-response-code-220-but-got-code-with-laravel?noredirect = 1&lq = 1 – Meera