Pregunta No se muestra la página de estado de php-fpm


He intentado obtener la página de estado de php-fpm. Cuando abro / página de estado en un navegador web o directamente a fcgi, dice Archivo no encontrado.

¿Podría ayudarme? ¿Cómo solucionar esto?

# grep -ER "status|ping" /etc/php5/* | grep -v ":;"
/etc/php5/fpm/pool.d/www.conf:pm.status_path = /status
/etc/php5/fpm/pool.d/www.conf:ping.path = /ping
/etc/php5/fpm/pool.d/www.conf:ping.response = pong 

# SCRIPT_NAME=/status SCRIPT_FILENAME=/status QUERY_STRING=  REQUEST_METHOD=GET cgi-fcgi -bind -connect /var/run/php-fpm-www.sock
Primary script unknown
Status: 404 Not Found
Content-type: text/html

File not found.

# SCRIPT_NAME=/ping SCRIPT_FILENAME=/ping REQUEST_METHOD=GET cgi-fcgi -bind -connect /var/run/php-fpm-www.sock
Primary script unknown
Status: 404 Not Found
Content-type: text/html

File not found.

5
2017-08-26 16:08


origen




Respuestas:


Acabo de tener el mismo problema y voy a describir lo que necesitaba para que funcionara. No ha compartido muchos detalles sobre su configuración php-fpm o su nginx (si esto es lo que está utilizando como servidor web). Tenga en cuenta que es posible que deba ejecutar las siguientes instrucciones con sudo / como root delante de los comandos para tener los derechos para modificar los archivos o reiniciar los servicios.

En php-fpm config

vi /etc/php-fpm.d/www.conf

Busque la directiva de ruta de estado y habilítela

pm.status_path = /status

A continuación, asegúrese de que nginx puede llamar a esta ubicación. En tu configuración del sitio nginx

vi /etc/nginx/conf.d/mysite.conf

Añadir

location ~ ^/(status|ping)$ {
     access_log off;
     #allow 127.0.0.1;
     #allow 1.2.3.4#your-ip;
     #deny all;
     include fastcgi_params;
     fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
     fastcgi_pass 127.0.0.1:9000;
 }

Tenga en cuenta que he comentado anteriormente las instrucciones para permitir y rechazar la habilitación de la página de estado desde cualquier IP. Asegúrese de que esto no está habilitado en la producción. Ahora reinicie ambos nginx y php-fpm

sudo service nginx restart
sudo service php-fpm restart

Llamar a la página de estado desde el navegador ahora debería funcionar


12
2017-11-18 13:48





Para php7.0 use estos códigos para habilitar el estado.

En el archivo predeterminado en / etc / nginx / sites-available /

location /status {
    include fastcgi_params;
    fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
    fastcgi_pass unix:/run/php/php7.0-fpm.sock;
    log_not_found off;
    }

Descomente la siguiente línea en www.conf (archivo) en /etc/php/7.0/fpm/pool.d (ubicación)

pm.status_path = /status

Reinicie ambos nginx / php7.0

sudo systemctl restart nginx
sudo systemctl restart php7.0-fpm

Ahora, en el navegador web, escriba esta dirección para obtener un informe detallado de las secuencias de comandos php que se ejecutan actualmente en el servidor web actualmente activo donde php7.0 está configurado para funcionar.

http://yoursite.net/status?html&full

Además, asegúrese de mantenerla protegida por contraseña para protegerla de intrusos como se explica aquí.

https://www.digitalocean.com/community/tutorials/how-to-set-up-password-authentication-with-nginx-on-ubuntu-14-04


4
2018-01-25 07:34





Si desea hacer esto desde la línea de comandos en debian.

como raíz

watch service php5-fpm status

-1
2018-02-19 16:32



La pregunta no era si el proceso se está ejecutando o no. - Putnik