当我访问index.PHP时,它工作正常.但是在localhost / pset7上,它给出了403.
这是权限日志,
-rw-r--r--. 1 root root 51 Jul 31 14:21 index.html -rw-r--r--. 1 root root 51 Jul 31 14:15 index.PHP drwxrwxr-x. 5 my_user my_user 4096 Jul 31 15:13 pset7
@H_301_10@我需要在网络服务器上运行它,所以请告诉我如何设置正确的权限并解决这个问题.
在CentOS上使用LEMP.
如果您需要任何其他信息/日志,请询问.
Edit1,Nginx config- http://pastebin.com/K3fcWgec
谢谢.
最佳答案
发生这种情况的原因是Nginx默认情况下不允许列出目录内容.
原文链接:https://www.f2er.com/nginx/435489.html因此,如果Nginx无法在目录中找到使用index指令指定的文件,它将返回403错误代码.
如果要允许目录列表,可以在配置块中使用autoindex指令:
location /pset7 { autoindex on; }
@H_301_10@您还应该将root和index指令从位置/块移动到服务器级别,以便您的配置如下所示:
server { listen 80; server_name localhost; root /var/www/html; index index.html index.htm index.PHP; location /pset7 { autoindex on; } error_page 500 502 503 504 /50x.html; location = /50x.html { root /usr/share/Nginx/html; } location ~ \.PHP${ try_files $uri =404; fastcgi_split_path_info ^(.+\.PHP)(/.+)$; fastcgi_pass unix:/var/run/PHP5-fpm.sock; fastcgi_index index.PHP; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; } }
@H_301_10@