Nginx 403 forbidden多种原因及故障模拟重现

Nginx 403 forbidden多种原因及故障模拟重现,第1张

Nginx403forbidden多种原因及故障模拟重现

浏览Nginx出现状态码为403禁止和故障模拟的原因。

1)nginx配置文件没有默认主页主参数或者主页文件不在网站文件目录中

index index.php index.html index.htm;

难题模拟示例:

[root@www extra]# cat www.conf #www virtualhost by oldboy    server {        listen       80;        server_name  www.etiantian.org;        location / {            root   html/www;            #index  index.html index.htm;#<==注解主页文档配备        }        access_log off;    } [root@www extra]# ../../sbin/nginx -sreload [root@www extra]# tail -1 /etc/hosts 10.0.0.8 www.etiantian.orgbbs.etiantian.org blog.etiantian.org etiantian.org [root@www extra]# ll ../../html/www/                    总使用量 12 drwxr-xr-x 2 root root 4096 4月  15 14:20 blog -rw-r--r-- 1 root root    4 4月  17 17:11index.html #<==存有主页文档 drwxr-xr-x 2 root root 4096 4月  15 14:19 oldboy [root@www extra]# curl -I -s 10.0.0.8|head-1 HTTP/1.1 403 Forbidden #<==难题是,Nginx沒有特定主页文档的主要参数,因而浏览Nginx时不容易把index.html当主页,因此报403不正确。

2)index.phpindex.htmlindex.htm网站文件目录下的配置文件中没有具体的homepage文档。

[root@www extra]# cat www.conf #www virtualhost by oldboy    server {        listen       80;         server_name www.etiantian.org;        location / {            root   html/www;            index  index.htmlindex.htm; #<==配备主页文档配备        }        access_log off;    } [root@www extra]# ../../sbin/nginx -sreload [root@www extra]# rm -f ../../html/www/index.html#<==删掉物理学主页文档 [root@www extra]# curl -I -s 10.0.0.8|head-1 HTTP/1.1 403 Forbidden

提醒:上述1)和2)有一个主要参数可以处理这个问题,即:

autoindex on; [root@www extra]# cat www.conf #www virtualhost by oldboy    server {        listen       80;        server_name  www.etiantian.org;        location / {            root   html/www;            autoindex on; #<==当找不着主页文档时,会展现文件目录构造,这一作用一般不能用除非是有要求。        }        access_log off;    }

实际效果如下:

3)网站文件目录或内部系统文件没有Nginx客户访问限制。

[root@www extra]# echo test >../../html/www/index.html [root@www extra]# chmod 700../../html/www/index.html #<==设定700让nginx客户没有权利载入 [root@www extra]# ls -l ../../html/www/index.html -rwx------ 1 root root 5 4月  17 17:15../../html/www/index.html [root@www extra]# curl -I -s 10.0.0.8|head-1 HTTP/1.1 403 Forbidden #<==403不正确 [root@www extra]# chmod 755../../html/www/index.html #<==设定755让nginx客户有权利载入 [root@www extra]# curl -I -s 10.0.0.8|head-1 HTTP/1.1 200 OK #<==200 OK了

4)nginx配置文件中设置了允许、拒绝等权限管理,导致手机客户端在没有管理权限的情况下浏览。

[root@www extra]# cat www.conf #www virtualhost by oldboy    server {        listen       80;        server_name  www.etiantian.org;        location / {            root   html/www;            index  index.html index.htm;            allow 192.168.1.0/24;            deny all;        }        access_log off;    } [root@www extra]# curl -I -s 10.0.0.8|head-1 HTTP/1.1 200 OK #<==设定755让nginx客户有权利载入 [root@www extra]# ../../sbin/nginx -sreload [root@www extra]# curl -I -s 10.0.0.8|head-1 HTTP/1.1 403 Forbidden

提醒:403问题不是nginx独有的,apache服务项目的禁403问题也是很多问题造成的,只是主要参数的关键点略有不同,见http://oldboy.blog.51cto.com/2561410/581383.


本文来自老男孩新小说内容预告片,:老男孩出版书籍交流Q群339128815226199808

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zz/783554.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-04
下一篇 2022-05-04

发表评论

登录后才能评论

评论列表(0条)

保存