我设置pm.status_path = /status
选项:
ubuntu:~$ cat /etc/php/7.1/fpm/pool.d/www.conf | egrep 'listen|status'
listen = /run/php/php7.1-fpm.sock
listen.owner = www-data
listen.group = www-data
pm.status_path = /status
Run Code Online (Sandbox Code Playgroud)
套接字是正确的(和站点工作):
ubuntu:~$ sudo ls -la /run/php/php7.1-fpm.sock
srw-rw---- 1 www-data www-data 0 Feb 9 07:58 /run/php/php7.1-fpm.sock
Run Code Online (Sandbox Code Playgroud)
但我无法收到此状态页面:
ubuntu:~$ SCRIPT_NAME=/status SCRIPT_FILENAME=/status \
> REQUEST_METHOD=GET sudo cgi-fcgi -bind -connect /run/php/php7.1-fpm.sock
Content-type: text/html; charset=UTF-8
Run Code Online (Sandbox Code Playgroud)
或者使用 nginx 配置:
server {
listen 80;
server_name localhost;
location /status {
include fastcgi_params;
fastcgi_pass unix:/run/php/php7.1-fpm.sock;
}
}
Run Code Online (Sandbox Code Playgroud)
curl http://localhost/status
为空,状态代码为 200。
curl http://localhost/something
按预期返回错误 404。
我应该怎么做才能解决这种情况?要检查什么?