1

Silex と SwiftMailer を使用してメーラー スクリプトをセットアップしようとしています。ただし、これまでにメールを送信することはできませんでした。に設定swiftmailer.use_spoolするとfalse、エラーは発生しませんが、メールも受信しません。代わりに、このようにスプールトランスポートキューをフラッシュすると...

if ($app['mailer.initialized']) {
    $app['swiftmailer.spooltransport']
        ->getSpool()
        ->flushQueue($app['swiftmailer.transport']);
}

...次の例外が発生します。

Fatal error: Uncaught exception 'Swift_TransportException' with message 'Connection could not be established with host abc.xyz [ #0]'

これまでのところ、この例外に関するドキュメントは見つかりませんでした。すべてのSMTP設定と資格情報が有効であると確信しています(別のホストも試しましたが、同じ問題です)。ホストに ping を実行することもできます。使用するポートは開いており、php_openssl有効になっています。

0 を返すSwift\Transport\StreamBuffer.php:269ため、失敗しているようです。stream_socket_client

$this->_stream = @stream_socket_client($host.':'.$this->_params['port'], $errno, $errstr, $timeout, STREAM_CLIENT_CONNECT, $streamContext);
if (false === $this->_stream) {
    throw new Swift_TransportException(
        'Connection could not be established with host '.$this->_params['host'].
        ' ['.$errstr.' #'.$errno.']'
        );
}

更新 #1 エラー ログを確認するのを忘れていましたが、次のように表示されています。

PHP Warning:  PHP Startup: Unable to load dynamic library '/usr/lib/php5/20121212/php_openssl.dll' - /usr/lib/php5/20121212/php_openssl.dll: cannot open shared object file: No such file or directory in Unknown on line 0

phpinfo()モジュールが有効になっていると表示されているにもかかわらず、PHP は php_openssl 拡張機能のロードに失敗しているようです。それはどこにあるべきですか、またはどのように入手すればよいですか?

更新 #2php_openssl.dll Windows 環境向けの拡張機能を 誤って有効にしようとした可能性があります。削除すると、エラーは明らかにエラー ログから消えますが、主な問題は解決しません。振り出しに戻って..

私は何が間違っているのでしょうか?

4

0 に答える 0