我的freebsd系统下Nginx PHP提示出现The page you are looking for i...
发布网友
发布时间:2022-04-23 13:36
我来回答
共1个回答
热心网友
时间:2022-05-06 06:54
1.先检查PHP FastCGI进程数是否够用:
netstat -anpo|grep “php-cgi”|wc -l
如果输出为0的话,则表示FastCGI 进程数够大,
2.此时则修改scgi_params文件,找到:
scgi_param SCGI 1;
把它改为:
scgi_param SCGI 5;
3.PHP程序如果的执行时间超过了Nginx的等待时间,就可适当地增加nginx.conf配置文件中FastCGI的timeout时间,例如:
http
{
……
fastcgi_connect_timeout 300;
fastcgi_send_timeout 300;
fastcgi_read_timeout 300;
fastcgi_buffer_size 64k
fastcgi_buffers 4 64k
……
}
4.重启FastCGI
先杀掉进程:# pkill -9 php-cgi
然后重启:# /usr/local/bin/spawn-fcgi -a 127.0.0.1 -p 9000 -u www -g www -f /usr/local/bin/php-cgi
5.重启Nginx
先杀掉进程:# killall -9 nginx
然后重启:# /usr/local/sbin/nginx
其它可能情况:
1)访问任意PHP文件,出现
The page you are looking for is temporarily unavailable.
Please try again later.
2)访问html页面,正常
原因:
nginx不能正常通过FastCGI结果访问PHP
1)如果是以tcp socket形式,可能是进程用户权限设置得不对
spawn-fcgi -a 127.0.0.1 -p 9000 -C 2 -u www-data -g www-data -f /usr/bin/php-cgi
可以改为 www-data 或者 nobody, 重启php-cgi进程
2)如果是unix socket,可能 socket文件权限没有写入能力
srwxrwxr-x 1 gavin gavin 0 11-12 10:18 php-fcgi.sock
为其他用户添加写入能力
chmod o+w php-fcgi.sock
参考资料:http://hi.baidu.com/unixnotesnet/blog/item/23aad7f3db36117e024f56c7.html