
Mi error es que cada vez que intento instalar Composer usando la GUI y la línea de comando, aparece el mismo error con la verificación SSL fallando y, por lo tanto, no puedo conectarme a HTTP a través de mi proxy. Estoy en una máquina con Windows 7 que ejecuta XAMPP detrás de un proxy.
Para empezar, investigué sobre este error y probé todas las soluciones en otras publicaciones, y me pregunto qué me perdí.
- Este parece ser el mismo problema que yo pero no hay respuestas.https://stackoverflow.com/questions/52457358/ssl-routinestls-process-server-certificatecertificate-verify-failed-failed-to
- Parece que este podría funcionar, pero estoy en una máquina con Windows 7 y no tengo la opción de purgar y reinstalar mis certificados.https://stackoverflow.com/questions/53351117/php-composer-https-error-1416f086-certificate-verifying-failed
- Esta no es una máquina virtual, está en el sistema operativo nativo, por lo que no creo que deba realizar ninguna sincronización de tiempo.https://stackoverflow.com/questions/53154837/ssl-error-messages-error1416f086ssl-routinestls-process-server-certificatec
Las cosas que he probado:
- Actualmente uso XAMPP para Apache, descargué e instalé las últimas versiones, así como algunas versiones anteriores.
- Volví a descargar curl-ca-bundle.crt y actualicé mi \xampp\apache\bin\curl-ca-bundle.crt para reflejar la última versión (~aproximadamente 20 kb de diferencia entre el que vino con XAMPP y el que descargado).
- Descargué manualmente el certificado de getcomposer.org y lo agregué al final de mi curl-ca-bundle.crt. (Sí, estoy seguro de que este es el archivo que PHP/Composer está usando para instalar)
- Cuando intento instalar esto a través de la línea de comando, aparece un error que dice que no se conoce dicho host. Descubrí que este problema se debe a que no se han configurado las URL HTTP/HTTPS_PROXY. Los encendí y luego aparece el mismo error que a través de la GUI (que se encuentra a continuación)
- Luego, cuando visité el sitio de Composer y descargué el .exe para instalarlo, en el instalador tengo la opción de especificar el proxy (lo cual hice) para deshacerme del host no sush, después de especificar el proxy ahora tengo exactamente el mismo error. como la línea de comando.
- Deshabilitar SSL/TLS para Composer. Pero todavía falla al intentar contactar con cualquier sitio web con https.
GUI:
El script del instalador de Composer no tuvo éxito [código de salida 1].
OpenSSL falló con un error de "verificación de certificado fallida". Esto indica un problema con los archivos de la Autoridad de certificación en su sistema, que pueden estar desactualizados.
Ubicación del certificado [desde la configuración ini de openssl.cafile]: \xampp\apache\bin\curl-ca-bundle.crt
El php.ini utilizado por su PHP de línea de comandos es: C:\xampp\php\php.ini
Salida del guión: El "https://getcomposer.org/versions"No se pudo descargar el archivo: la operación SSL falló con el código 1. Mensajes de error de OpenSSL: error: 1416F086: rutinas SSL: tls_process_server_certificate: la verificación del certificado falló al abrir la secuencia: no se puede conectar al servidor HTTPS a través del proxy
Línea CMD:
C:\Users\S0077500\Desktop\Laravel\Attempt 7>php composer.phar diagnose
You are running Composer with SSL/TLS protection disabled.
Checking platform settings: OK
Checking git settings: OK
Checking http connectivity to packagist: OK
Checking https connectivity to packagist: WARNING
[Composer\Downloader\TransportException] The "https://repo.packagist.org/package
s.json" file could not be downloaded: SSL operation failed with code 1. OpenSSL
Error messages:
error:1416F086:SSL routines:tls_process_server_certificate:certificate verify fa
iled
failed to open stream: Cannot connect to HTTPS server through proxy
Composer is configured to disable SSL/TLS protection. This will leave remote HTT
PS requests vulnerable to Man-In-The-Middle attacks.
Checking HTTP proxy: FAIL
[Composer\Downloader\TransportException] The "https://repo.packagist.org/package
s.json" file could not be downloaded: SSL operation failed with code 1. OpenSSL
Error messages:
error:1416F086:SSL routines:tls_process_server_certificate:certificate verify fa
iled
failed to open stream: Cannot connect to HTTPS server through proxy
Checking HTTP proxy support for request_fulluri: OK
Checking HTTPS proxy support for request_fulluri: Unable to assess the situation
, maybe github is down (The "https://api.github.com/repos/Seldaek/jsonlint/zipba
ll/1.0.0" file could not be downloaded: SSL operation failed with code 1. OpenSS
L Error messages:
error:1416F086:SSL routines:tls_process_server_certificate:certificate verify fa
iled
failed to open stream: Cannot connect to HTTPS server through proxy)
Checking github.com rate limit: FAIL
[Composer\Downloader\TransportException] The "https://api.github.com/rate_limit"
file could not be downloaded: SSL operation failed with code 1. OpenSSL Error m
essages:
error:1416F086:SSL routines:tls_process_server_certificate:certificate verify fa
iled
failed to open stream: Cannot connect to HTTPS server through proxy
Checking disk free space: OK
Checking pubkeys: FAIL
Missing pubkey for tags verification
Missing pubkey for dev verification
Run composer self-update --update-keys to set them up
Checking composer version:
[Composer\Downloader\TransportException]
The "https://getcomposer.org/versions" file could not be downloaded: SSL op
eration failed with code 1. OpenSSL Error messages:
error:1416F086:SSL routines:tls_process_server_certificate:certificate veri
fy failed
failed to open stream: Cannot connect to HTTPS server through proxy
diagnose
C:\Users\S0077500\Desktop\Laravel\Attempt 7>
Respuesta1
Tengo Windows 10 con xampp 3.0.12 (php5.3). No pude instalar Composer. Probé los pasos siguientes y funcionó para mí.
- Descargue el script de instalación desdehttps://getcomposer.org/installer.
- Guárdelo en un archivo llamado
composer-setup.php
. - Ábrelo
composer-setup.php
en tu editor favorito. - Reemplace todos los HTTPS por HTTP y guarde el archivo.
Ejecute los siguientes 3 pasos en el símbolo del sistema:
php -r "if (hash_file('sha384', 'composer-setup.php') === 'a5c698ffe4b8e849a443b120cd5ba38043260d5c4023dbf93e1558871f1f07f58274fc6f4c93bcfd858c6bd0775cd8d1') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;" php composer-setup.php php -r "unlink('composer-setup.php');"
¡Voilá! Composer instalado correctamente, puede ejecutar:
php composer.phar
.
Gracias
Respuesta2
Yo tenía el mismo error. Así resolví el problema. Seguí las instrucciones enhttps://getcomposer.org/download/, párrafo siguienteInstalación de línea de comando
```
php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
php -r "if (hash_file('sha384', 'composer-setup.php') === '55ce33d7678c5a611085589f1f3ddf8b3c52d662cd01d4ba75c0ee0459970c2200a51f492d557530c71c15d8dba01eae') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;"
php composer-setup.php
php -r "unlink('composer-setup.php');"
```
Reemplacé la línea php composer-setup.php
porphp composer-setup.php --disable-tls
No es necesario editar el script php.
Se me ocurrió la idea al revisar el código en Composer-setup.php donde encontré la opción. Debería haber corrido php composer-setup.php --help
para encontrar la misma respuesta más rápido y sin leer código.