El transporte de sockets " ssl " en PHP no está habilitado


Estoy teniendo problemas para habilitar el transporte de sockets "ssl" en PHP. Cuando corro mi script, obtengo el error:

Advertencia: fsockopen() [función.fsockopen]: incapaz de conectar con ssl://www.mi.sitio.com:443 (No se puede encontrar el transporte de socket "ssl" - ¿olvidaste habilitarlo cuando configuraste PHP?)

Estoy ejecutando IIS6 en Windows y esto es lo que he hecho hasta ahora para intentar que funcione:

  • sin comentar el php_openssl.dll y php_sockets.extensiones dll en php.ini
  • me aseguré de que PHP estaba cargando el archivo ini al que hice cambios (lo es, y definitivamente está cargando otras extensiones, así que estoy bastante seguro de que este no es el problema)
  • se aseguró de php_openssl.dll y php_sockets.dll estaban en la ubicación correcta
  • copiado ssleay32.dll y libeay32.dll a la carpeta principal de PHP, la carpeta de WINDOWS y la carpeta de WINDOWS/system32
  • se aseguró de que la variable de ruta de Windows incluyera la ubicación de PHP
  • se aseguró de que los permisos de archivo fueran correctos en todos los archivos relevantes.

He reiniciado IIS después de casi todos los cambios, pero no he tenido suerte. ¿Hay algo obvio que esté haciendo mal? ¿Hay alguna manera de solucionar esto en partes más pequeñas? (Así que puedo averiguar el problema por el proceso de eliminación...?)

Desafortunadamente Windows/IIS no son mi área de experiencia I Me han puesto a cargo porque nadie más parece saber nada.

Author: Michael Irigoyen, 2009-11-10

6 answers

Estaba teniendo problemas en Windows 7 con PHP 5.4.0 en la línea de comandos, usando el servidor Xampp 1.8.1. Esto es lo que hice:

  1. Cambiar el nombre de php.ini-production a php.ini (en C:\xampp\php \ folder)
  2. Editar php.ini y descomentar extension_dir=ext.
  3. También descomentar extension=php_openssl.dll.

Después de eso funcionó bien.

 66
Author: cikatomo,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2013-05-26 14:50:19

Éxito!

Después de comprobar los archivos de registro y asegurarse de que los permisos en php_openssl.dll eran correctos, busqué en Google la advertencia y encontré más cosas para probar.

Así que:

  • añadido C:\PHP\ext a la ruta de Windows
  • se agregó libeay32.dll y ssleay32.dll a C:\WINDOWS\system32\inetsrv
  • reinició el servidor

No estoy seguro de cuál de estos solucionó mi problema, pero definitivamente está solucionado ahora! :)

Encontré estas cosas para probar en este pagina: http://php.net/manual/en/install.windows.extensions.php

Gracias por su ayuda!

 21
Author: jelina,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2009-11-11 02:31:57

En XAMPP Versión 1.7.4 el servidor no tiene extensión=php_openssl.línea dll en archivo ini php. Tenemos que añadir extension = php_openssl.dll en php.ini file

 8
Author: Selvakumar,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2013-01-07 07:19:29

Se encontró con el mismo problema en Laravel 4 tratando de enviar correo electrónico utilizando cifrado SSL.

Teniendo WampServer 2.2 en Windows 7 64bit solo habilité php_openssl en php.ini, reinició WampServer y funcionó sin problemas.

Hizo lo siguiente:

  • Haga clic en WampServer - > PHP - > extensiones PHP - > php_openssl
  • Reiniciar WampServer
 7
Author: Marko Aleksić,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2013-05-15 17:09:03

Simplemente descomente extension=php_openssl.dll Reinicie el servicio Apache y eso debería ayudar.

 7
Author: Yogesh Unavane,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2014-01-01 15:37:16

También me encontré con este problema justo ahora mientras me metía con laravel.

Estoy usando wampserver para windows y tuve que copiar /bin/apache/apacheversion/bin/php.archivo ini a / bin / php / phpversion / php.ini

 1
Author: Dale,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2012-11-28 09:14:53