之前安装discuz更改了下nginx配置,今天需要访问php文件,更改回来之后,200成功却显示空白页,之前可以成功
安装环境:
ubunto16,nginx1.10.3,php7.0
之前更改的是php解析,所以更改回访问显示空白页应该也是php解析配置的问题,用这个思路百度搜索,
记一次安装Nginx+php-fpm安装后无法解析.php文件,状态码200,但显示空白页
在Nginx+php-fpm的组合中,Nginx将php交由php-fpm处理时需要使用fastcgi_params中的内建参数来解析处理请求。
安装完成Nginx后会自动生成fastcgi_params文件。
安装Nginx后默认配置中并没有fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;这一项
而这一项的意思是指脚本文件请求的路径,也就是说当访问127.0.0.1/index.php的时候,需要读取网站根目录下面的index.php文件,如果没有配置这一配置项时,nginx不回去网站根目录下访问.php文件,所以返回空白
所以若默认fastcgi_params中若有fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;参数,则在Nginx配置中只需要加include fastcgi_params;这一项即可;若默认配置中没有则可以单独加上。
fastcgiparams配置文件: vi /etc/nginx/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;
网友评论