# grep pm.status_path /etc/php5/fpm/pool.d/www.conf
pm.status_path = /fcgi-status
Конфигурация nginx:
location ~ ^/(fcgi-status|ping)$ {
access_log off;
allow 127.0.0.1;
deny all;
fastcgi_param SCRIPT_FILENAME /path/$fastcgi_script_name;
fastcgi_pass unix:/var/run/php-fastcgi/php-fastcgi.socket;
}
fastcgi_param и fastcgi_pass такие же, как и для работающего веб-сайта.
php-fastcgi и nginx были перезапущены, но:
# curl http://127.0.0.1/fcgi-status -i
HTTP/1.1 404 Not Found
Server: nginx/1.10.1
Date: Tue, 18 Oct 2016 08:10:03 GMT
Content-Type: text/html
Transfer-Encoding: chunked
Connection: keep-alive
X-Powered-By: PHP/5.5.9-1ubuntu4.20
No input file specified.
Это не дубликат этот вопрос потому что ошибка не «Файл не найден» (возможно, nginx не смог найти путь), а «Не указан входной файл». Обратите внимание там является php в ответе, поэтому ответ пришел не от nginx, а от php-fpm.
Это единственный пул на сервере.
Что я делаю не так?
В итоге нашел: перепутал fpm и fast-cgi. Изменения конфигурации были внесены в fpm, но я использую fast-cgi.
Ваш fastcgi_param SCRIPT_FILENAME
в нем есть префикс пути, однако в php-fpm
конфигурации у вас нет префикса.
Поэтому вам нужно изменить любой из них, чтобы они были одинаковыми.