Не удалось найти перенос сокетов «ssl» – вы забыли включить его при настройке PHP?

Я много раз пробовал за эту ошибку. Я пробовал все решения из этой темы без везения. <? phpinfo(); ?> <? phpinfo(); ?> (единственная разница, с которой я пользуюсь Appserver вместо IIS), он не показывает ничего, что можно было бы использовать для SSL. Что еще я должен попробовать?

Полное сообщение об ошибке:

  • Масштабирование приложения чата - короткий опрос и длительный опрос (AJAX, PHP)
  • Как правильно получить fopen to timeout
  • Ошибка при использовании ssl cert с PHP
  • Как языки сценариев используют сокеты?
  • socket_create vs. fsockopen php
  • Может ли PHP асинхронно использовать сокеты?
  •  <b>Warning</b>: fsockopen() [<a href='function.fsockopen'>function.fsockopen</a>]: unable to connect to ssl://smtp.gmail.com:465 (Unable to find the socket transport &quot;ssl&quot; - did you forget to enable it when you configured PHP?) in <b>C:\AppServ\www\webgitz\test\class.smtp.php</b> on line <b>122</b><br /> SMTP -> ERROR: Failed to connect to server: Unable to find the socket transport "ssl" - did you forget to enable it when you configured PHP? (27010016) 

    и код:

     <?php require_once "validation.php"; require_once "PHPMailer.php"; require_once "class.smtp.php"; $email= "foo@gmamcil.com"; $mail = new PHPMailer(); $mail->IsSMTP(); $mail->SMTPAuth = true; // enable SMTP authentication $mail->Port =465; // set the SMTP server port $mail->Host = "smtp.gmail.com"; // GMAIL's SMTP server $mail->SMTPDebug = 2; $mail->SMTPSecure = 'ssl'; $mail->Username = "xxxxxx@gmail.com"; // GMAIL username $mail->Password = "*********"; // GMAIL password $mail->AddReplyTo("XXXXX@gmail.com","AAAA"); // Reply email address $mail->From = "XXXX@gmail.com"; $mail->FromName = "...."; // Name to appear once the email is sent $mail->Subject = "...."; // Email's subject $mail->Body = "Hello World,<br />This is the HTML BODY<br />"; //HTML Body $mail->AltBody = "..."; // optional, commentA out and test $mail->WordWrap = 50; // set word wrap $mail->MsgHTML($msg); // [optional] Send body email as HTML $mail->AddAddress("$email", "fooo"); // email address of recipient $mail->IsHTML(true); // [optional] send as HTML if(!$mail->Send()) echo 'ok'; else echo 'error'; ?> 

  • Yii2 htaccess - Как скрыть интерфейс / web и бэкэнд / web ПОЛНОСТЬЮ
  • Как я могу использовать CodeIgniter для загрузки определенных страниц с использованием SSL?
  • как я могу определить переменную в файле .htaccess и использовать ее?
  • Symfony 3.1.5 Предупреждение: SessionHandler :: read (): Файл данных сеанса не создан вашим uid
  • PHP испускает 500 на ошибках - где это документировано?
  • Блокируйте прямой доступ к файлу через http, но разрешите доступ к скрипту php
  • 4 Solutions collect form web for “Не удалось найти перенос сокетов «ssl» – вы забыли включить его при настройке PHP?”

    Проверьте файл php.ini на нем, если у вас есть это:

     ;extension=php_openssl.dll 

    измените его на

     extension=php_openssl.dll 

    После этого не забудьте перезапустить Apache, используя любую панель управления, предлагаемую Appserver, или используя окна служб на панели управления системы.

    Также убедитесь, что php_openssl.dll находится в папке, доступной системе, и многие используют эту проблему для решения проблемы локализации DLL, скопировав их в C: \ windows или C: \ windows \ system32. Хотя это не обязательно.

    После этого выполните файл с phpinfo и убедитесь, что он включен.

    Я где-то читал, не могу точно сказать, что некоторые установки такого типа имеют больше, чем один php.ini, но только один действительно активен, может быть, вы отредактировали неправильный?

    У меня была схожая ошибка с ssl в течение нескольких часов.

    Для меня работала копирование php\libeay32.dll , php\ssleay32.dll и php\ext\php_openssl.dll из каталога php в каталог Apache2.2\bin . Затем перезапустите apache.

    Для некоторых людей эти решения не работают.

    Для меня было решение: скопировать dll libeay32.dll и ssleay32.dll в каталог bin сервера – apache.

    Решение предлагается в комментарии по адресу : http://php.net/manual/fa/openssl.installation.php

    Когда я смотрю в журнал ошибок, я понял, что проблема заключается в загрузке dll и размещение их в каталоге сервера было единственным способом.

    Правильный ответ – заменить линию

     ;extension=php_openssl.dll 

    в файле php.ini с

     extension=php_openssl.dll 

    Если вы не можете найти extension=php_openssl.dll в файле php.ini , просто добавьте следующую строку в файл:

     extension=php_openssl.dll 

    Это должно сработать!

    PHP is the Best Programming Language in the world.