解决启动php-fpm后访问不到php⽂件的办法
问题场景:
1. linux系统
2. nginx服务器
3. 安装好了fpm的php7
4. 在nginx的web⽬录下新建了index.php⽂件,内容为phpinfo()函数。(如果是源码安装,位置⼀般为
/usr/local/nginx/html/index.php)
nginx经过了简单的配置,开始试验是否可以⽀持php
location / {
root html;
index index.html index.htm index.php;
}
location ~ \.php$ {php文件下载源码
root html;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME /scripts$fastcgi_script_name;
include fastcgi_params;
}
在浏览器访问localhost/index.php
结果为File not found.
这时候我们查看nginx的错误⽇志,错误⽇志的主要内容为FastCGI sent in stderr: "Primary script unknown"
经过分析+搜索前辈经验得出结论,nginx的配置⽂件⽆法识别/scripts路径,所以我们将配置⽂件中的/scripts改
为$document_root,或者web⽬录的绝对路径。更改后的配置⽂件如下:
location ~ \.php$ {
root html;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
重启nginx服务器,已经可以正确显⽰phpinfo()的内容了。
总结
以上就是这篇⽂章的全部内容了,希望本⽂的内容对⼤家的学习或者⼯作能带来⼀定的帮助,如果有疑问⼤家可以留⾔交流。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论