我得到504网关超时,当我尝试到达我的服务器一个小检查没有发现任何日志在php5-fpm日志,但只是为了确保,我试图重新启动它。 当我试图重新启动它:
sudo service php5-fpm restart
我得到[fail]但是当我做
sudo service php5-fpm stop sudo service php5-fpm start
我没有错误。
如果没有日志,我该如何进行调查? 我能做什么?
你有没有检查你的error_log文件的php-fpm ? 该文件的位置应该在你的php-fpm.conf (在Ubuntuconfiguration中是/etc/php5/fpm/php-fpm.conf,日志文件是/ var / log / php5-fpm / log)中声明,同时检查你的log_level ,如果被禁用(; log_level),请启用它并将其更改为debugging 。 之后,请尝试重新启动php5-fpm服务并检查您的日志。
你也可以尝试在前台模式下运行php5-fpm:
# php5-fpm -y /etc/php5/fpm/php-fpm.conf
也许这会让你看到有趣的东西。
标准故障排除程序
ps aux | grep php-fpm ps aux | grep php-fpm ,然后执行lsof -p $PID | grep log lsof -p $PID | grep log (如果没有显示,则省略grep)。 这个笔记帮助了我: https : //bugs.launchpad.net/nginx/+bug/1366651
在我的情况下,更新到nginx> 1.6.1传递给php5-fpm的参数位于fastcgi.conf而不是fastcgi_params中,导致PHP始终返回200(ok),但从不会有任何内容,因为SCRIPT_FILENAME不再设置。
我希望这也能帮助别人。
对我来说,问题是我的php-fpm.conf文件没有使用默认的configuration文件名 – 它被命名为/etc/php5/fpm/php5-fpm.conf vs php-fpm.conf )
php5-fpm -t [26-Jul-2014 22:39:16] ERROR: failed to open configuration file '/etc/php5/fpm/php-fpm.conf': No such file or directory (2) [26-Jul-2014 22:39:16] ERROR: failed to load configuration file '/etc/php5/fpm/php-fpm.conf' [26-Jul-2014 22:39:16] ERROR: FPM initialization failed
我将conf文件重命名为php-fpm.conf并解决了这个问题。
sudo mv /etc/php5/fpm/php5-fpm.conf /etc/php5/fpm/php-fpm.conf sudo service php5-fpm restart * Restarting PHP5 FastCGI Process Manager php5-fpm [ OK ]
我遇到没有日志文件的问题,然后注意到我通过HTTPS而不是HTTP访问URL,该协议还没有在Nginx中设置,所以PHP5-FPM没有获得stream量。
可能帮助某人。
这可能发生在Ubuntu dist-upgrade软件包php5-fpm被卸载,因为PHP 7使用php-fpm代替。 尝试在控制台上运行这个:
php5-fpm
如果它不存在,你可能已经使用PHP 7,所以安装
apt-get install php-fpm
这将安装php7版本