nginx+php-fpm打开index.php显示空白
1: nginx+php-fpm设置
nginx+php-fpm下打开php文件设置
分别配置好后都启动成功,但是打开index.php显示空白,替换为index.html显示正常,说明是环境配置的问题.
原因是nginx无法正确的将 *.php 文件的地址传递给php-fpm去解析, 相当于php-fpm接受到了请求,但这请求却指向一个不存在的文件,于是返回空结果。 为了解决这个问题,需要改动nginx默认的fastcgiparams配置文件, 在文件的最后增加两行
首先nginx启动目录的配置文件是.. /conf/nginx.conf
(我的是/usr/local/nginx/conf/nginx.conf)
确定你的web根目录(我的web目录设置为/webdata)
修改:
vim /usr/local/nginx/conf/nginx.conf
修改以下3个地方root对应值:
location / {
root /webdata;
index index.php index.html index.htm;
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root /webdata;
}
location ~ \.php$ {
root /webdata;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
# fastcgi_param SCRIPT_FILENAME /scripts$fastcgi_script_name;
include fastcgi_params;
}
需要改动nginx默认的fastcgiparams配置文件, 在文件的最后增加两行:
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_param PATH_INFO $fastcgi_script_name;
具体操作:
1 找到你配置nginx所在的fastcgiparams文件
我的是/usr/local/nginx/conf/fastcgi_params
ssh窗口执行:
vim /usr/local/nginx/conf/fastcgi_params
结尾添加以下两行,并wq保存退出:
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_param PATH_INFO $fastcgi_script_name;
2 . 启动nginx服务(取决于你自己nginx的安装路径):
根据配置启动nginx:
/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/ngin
x.conf
如果已经启动的就重启:
/usr/local/nginx/sbin/nginx -s reload
(查看进程 ps -ef|grep nginx)
- 启动php-fpm服务(取决于你自己php-fpm的安装路径):
/etc/init.d/php-fpm start
如果已经启动的就重启:
/etc/init.d/php-fpm restart
(查看进程ps -ef|grep php-fpm)
4 打开ip地址测试一下
作者:树懒啊树懒
链接:https://www.jianshu.com/p/2e0451b4bb8a
来源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。