nginx下运行php的程序时返回200访问却是空白页问题的解决方法

时间:2023-01-24 08:33:10

ngxin中安装php-fpm后,html静态页面没问题,不过,虽然phpinfo页面返回200状态码,但浏览却总是空白页,也没有任何报错。

考虑应该是nginx已经将php页面转移给php处理了,所以问题应该在php的配置上,经过查找,发现需要在nginx中加入一句话:

fastcgi_param  SCRIPT_FILENAME $document_root$fastcgi_script_name;

安装完nginx后,默认的fastcgi_params配置文件中没有上面这句。

在nginx.conf中的
复制代码 代码如下:

location ~ .php$ {
root html;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
#fastcgi_param SCRIPT_FILENAME /scripts$fastcgi_script_name;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}

或在fastcgi_params配置文件中加入:

复制代码 代码如下:

# PHP only, required if PHP was built with --enable-force-cgi-redirect
fastcgi_param REDIRECT_STATUS 200;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;

重启nginx,即可正常显示页面了。