1

Laravel で Mailgun を使用してメールを送信する方法を学習しようとしています。電子メールを送信しようとすると、次のようなタイムアウトが表示されます: 最大実行時間が 60 秒を超えました アプリケーションはここでタイムアウトします:

$line = fgets($this->_out);

メールページのボタンをクリックするとアクティブになるルートがあります。

Route::post('/email', 'MainController@sendEmail');

これが私のコントローラー機能です(プライバシー上の理由から私の電子メールを置き換えました):

    public function sendEmail() {
        $data = [
            'title'=>'Email'
        ];
        Mail::send('emails.hello', $data, function($message) {
            $message->from('example@gmail.com', 'Example Person');
            $message->to('example@gmail.com')->subject('we made it');
        });
        return Redirect::to('/');
    }

私が間違っているかもしれないことについてのアイデアはありますか?

4

2 に答える 2

2

これは通常、app/config/mail.php 設定ファイルで使用されている SMTP ポートがホスティング プロバイダーによって開かれていない場合に発生します。確認の上、ポート開放を依頼してください。これで問題は解決するはずです。

于 2014-06-01T18:48:06.240 に答える
1

API パッケージを追加し、構成を公開および更新し、カスタム ファサードを使用してメールを送信するだけです (Mail::send() を Mailgun::send() に変更します)。

ここでパッケージを見つけることができます: http://packalyst.com/packages/package/vtalbot/mailgun

私はこれがあなたが得たエラーに実際に対処していないことを知っています (それを支援するにはより多くの情報が必要です) が、パッケージを使用すると全体が簡素化されます!

于 2014-04-25T13:50:49.460 に答える