当前位置: 代码迷 >> 综合 >> nginx报错:403 Forbidden 并且访问首页index.php是下载文件的状态
  详细解决方案

nginx报错:403 Forbidden 并且访问首页index.php是下载文件的状态

热度:70   发布时间:2023-12-12 17:29:34.0

nginx报错:403 Forbidden 并且访问首页index.php是下载文件的状态,不能正常解析php


系统有其他两个站访问是正常的

看日志没有看到明显的错误


搜索了下:

答案如下:

php的时候会变成下载:这是因为nginx没有设置好碰到php文件时,要传递到后方的php解释器。


看看你的nginx.conf配置,里面有没有这样的设置:
location ~ .*\.php$ {
fastcgi_pass   127.0.0.1:9000;
}
上面的意思,就是说,碰到.php结尾的文件,传递给后方127.0.0.1的9000端口上。
当然啦,你的php-fpm解析器也需要正常运行,并监听好9000端口,才能最终生效并有效处理php脚本。


环境中的PHP配置:

location ~ \.php$ {
        try_files $uri = 404;
        fastcgi_pass   127.0.0.1:9000;
        fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
        include        fastcgi_params;


发现是location在匹配的时候没有.*

加上问题解决,在虚拟机里面模拟环境没有加.*正常解析,没有想明白


有时候访问html也报错403 forbidden

此时可以替换nginx.conf中的运行用户如 user nginx 改为 user yunva等目录的高权限用户,或者换成root来调试



  相关解决方案