Отправка электронной почты с использованием php, gmail и swiftmailer вызывает ошибку, связанную с SSL
-
27-10-2019 - |
Вопрос
Вот мой PHP-код:
родовое словоВот ошибка:
( ! ) Warning: fsockopen() [function.fsockopen]: unable to connect to ssl://smtp.gmail.com:465 (Unable to find the socket transport "ssl" - did you forget to enable it when you configured PHP?) in C:\Program Files\wamp\www\swift-mailer\lib\classes\Swift\Transport\StreamBuffer.php on line 233
( ! ) Fatal error: Uncaught exception 'Swift_TransportException' with message 'Connection could not be established with host smtp.gmail.com [Unable to find the socket transport "ssl" - did you forget to enable it when you configured PHP? #44551400]' in C:\Program Files\wamp\www\swift-mailer\lib\classes\Swift\Transport\StreamBuffer.php on line 235
( ! ) Swift_TransportException: Connection could not be established with host smtp.gmail.com [Unable to find the socket transport "ssl" - did you forget to enable it when you configured PHP? #44551400] in C:\Program Files\wamp\www\swift-mailer\lib\classes\Swift\Transport\StreamBuffer.php on line 235
В чем проблема ??
Обновление:
Я проверил код сгенерированного тега, и он говорит:
родовое словоЯ сослался на приведенные ниже ссылки, но мне не удалось установить ssl ...
Решение
Поддерживал ли ваш php SSL? http://php.net/manual/en/function.fsockopen.php и проверьте http://www.php.net/manual/en/openssl.installation.php для справки.
Создайте страницу с
родовое словоВключен ли SSL?
Другие советы
Я искал аналогичный вопрос и обнаружил, что вам нужно отредактировать файл php.ini отредактируйте следующую строку
родовое словоудалите точку с запятой, и все будет нормально
Надеюсь, что это поможет кому-нибудь еще :)
gmail это нужно в вашем config.yml
swiftmailer: шифрование: tls
или замените свой: -> setEncryption ('ssl') от -> setEncryption ('tls')
а не ssl
Вы должны включить модуль php_openssl из расширений php.Просто отредактируйте файл php.ini
родовое словоНа самом деле, я советую использовать tls на 25-м порту проверить, используя следующий синтаксис:
родовое словоВам необходимо настроить php для работы с ssl
Я надеюсь, что вы решили свою проблему, но для меня строка:
родовое словоне существует в моем php.ini (работает XAMPP 1.7.7 на Win7), так что просто добавьте его в раздел расширений, удалите из него точку с запятой, и он должен работать.