Cómo solucionar 502 Puerta de enlace incorrecta
502 Bad Gateway es un mensaje de error. Este error no significa que el servidor ascendente esté cerrado (puerta de enlace/agente que no responde), sino que el servidor ascendente y la puerta de enlace/agente intercambian datos utilizando un protocolo que sí lo hacen. no estoy de acuerdo con.
No.
Una razón: en la actualidad, hay muchos problemas con el paquete de instalación de un solo clic de lnmp es 502 Bad
Gateway, en la mayoría de los casos el motivo. es al instalar php Anteriormente, es posible que algunos paquetes lib en el script no se hayan instalado, lo que provoca que PHP no se pueda compilar ni instalar correctamente. Solución: puede intentar instalarlo manualmente de acuerdo con el script en el paquete de instalación de una clave lnmp para ver qué está causando el error.
La segunda razón: en php.ini, el elemento de configuración del acelerador debe colocarse antes de la configuración de Zend Optimizer; de lo contrario, también puede causar 502 Bad Gateway.
La tercera razón: en 502 Los problemas ocurren durante la instalación y el uso. Generalmente, se debe a que el proceso php-cgi predeterminado es 5. El 502 puede deberse a procesos phpcgi insuficientes. Debe modificar /usr/local/php/etc/php-fpm.conf. cambie los problemas 502. El valor max_children se incrementa adecuadamente.
La cuarta razón: se agota el tiempo de ejecución de PHP, modifique /usr/local/php/etc/php.ini y cambie max_execution_time a 300.
Quinta razón: espacio en disco insuficiente, como que el registro mysql ocupa mucho espacio.
La sexta razón: compruebe si el proceso php-cgi se está ejecutando.
Otra solución:
Nginx 502 Bad Gateway significa que el PHP-CGI solicitado se ha ejecutado, pero no se ha ejecutado por algún motivo (generalmente un problema con la lectura de recursos) Finalización hace que el proceso PHP-CGI finalice. En términos generales, Nginx 502 Bad Gateway está relacionado con la configuración de php-fpm.conf.
php-fpm.conf tiene dos parámetros cruciales, uno es max_children y el otro es request_terminate_timeout, pero este valor no es universal y debe calcularlo usted mismo.
Cuando ocurre un problema 502 durante la instalación y el uso, generalmente se debe a que el proceso php-cgi predeterminado es 5. Puede deberse a procesos phpcgi insuficientes que ocurre el problema 502 /usr/local/php. /etc/ debe modificarse. Aumente el valor max_children adecuadamente en php-fpm.conf.
El método de cálculo
es el siguiente: si el rendimiento del servidor es lo suficientemente bueno, los recursos de banda ancha son suficientes y no hay bucles ni errores en el script PHP, puede directamente
request_terminate_timeout se establece en 0. El significado de 0 es permitir que PHP-CGI continúe ejecutándose sin límite de tiempo. Si esto no es posible, significa que
PHP-CGI puede tener un ERROR, o el ancho de banda no es suficiente, u otras razones hacen que PHP-CGI se congele, entonces se recomienda
Asigne un valor a request_terminate_timeout. Este valor se puede configurar de acuerdo con el rendimiento del servidor. En términos generales, cuanto mejor sea el rendimiento, mayor será el ajuste, oscilando entre 20 y 30 minutos.
¿Cómo se calcula el valor de max_children? En principio, cuanto mayor sea el valor, mejor. Si hay demasiados procesos php-cgi, el procesamiento será más rápido y habrá menos solicitudes en cola.
La configuración de max_children también debe configurarse de acuerdo con el rendimiento del servidor. En términos generales, la memoria consumida por cada php-cgi en un servidor es de aproximadamente 20 M en circunstancias normales.
Según la respuesta oficial, verificamos las posibilidades relacionadas y, combinadas con las respuestas de los internautas, llegamos a la siguiente solución:
1. fastcgi (valor max_children) Código: netstat -anpo | grep "php-cgi" | wc -l
5 (si se muestra 5)
2. : arriba para observar el número de proceso fastcgi, si el número de procesos utilizados es igual o superior a 5, significa que es necesario aumentarlo (dependiendo de la situación real de la máquina)
3. Ajustar /usr/local/php/etc/php-fpm.conf Configuraciones relacionadas
lt; valor nombre="max_children"gt;/valuegt;
lt; ="request_terminate_timeout"gt; 60slt;/valuegt;
max_children tiene un máximo de 10 procesos, con 20 MB de memoria por proceso, hasta 200 MB.
El tiempo de ejecución de request_terminate_timeout es de 60 segundos, que es 1 minuto.