nginx “403 Forbidden” 错误的原因及解决办法

技术分享 Story 110浏览 0评论

1.权限配置不正确

这个是nginx出现403 forbidden最常见的原因。

为了保证文件能正确执行,nginx既需要文件的读权限,又需要文件所有父目录的可执行权限。

解决办法:  

  可以将权限修改为root,在nginx的nginx.conf 文件的顶部加上user root;指定操作的用户是root。

 

 

第二个我自己也不是太懂哈 copy别人的,大家可以参考下

2.目录索引设置错误(index指令配置)

网站根目录不包含index指令设置的文件。

例如,运行PHP的网站,通常像这样配置index

index  index.html index.htm index.php;

当访问该网站的时,nginx 会按照 index.html,index.htm ,index.php 的先后顺序在根目录中查找文件。如果这三个文件都不存在,那么nginx就会返回403 Forbidden。

如果index中不定义 index.php ,nginx直接返回403 Forbidden而不会去检查index.php是否存在。

同样对于如果运行jsp, py时也需要添加index.jsp,index.py到目录索引指令index中。

解决办法:添加首页文件到index指令,常见的是index.php,index.jsp,index.jsp或者自定义首页文件。

 

转载请注明:成长的对话 » nginx “403 Forbidden” 错误的原因及解决办法