[Linux] Nginx networking 403 Forbidden 静态文件不允许查看

本文深入解析Nginx中403 Forbidden错误的含义与常见场景,包括IP屏蔽、目录访问限制及内网文件访问等问题,并提供详细的解决策略,如权限配置、目录索引设置等。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

nginx 的 403 Forbidden errors 表示你在请求一个资源文件但是nginx不允许你查看。

403 Forbidden 只是一个HTTP状态码,像404,200一样不是技术上的错误。
哪些场景需要返回403状态码的场景?

1.网站禁止特定的用户访问所有内容,例:网站屏蔽某个ip访问。
2.访问禁止目录浏览的目录,例:设置autoindex off后访问目录。
3.用户访问只能被内网访问的文件。

1.权限配置不正确

解决办法: 设置所有父目录为755权限,设置文件为644权限可以避免权限不正确。

      或:修改nginx.conf 文件修改nginx启动用户 。

             或:修改www-data对相应目录的读及写权限。


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

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

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

 

转载于:https://www.cnblogs.com/abeen/p/4517171.html

### 解决 Nginx 403 Forbidden 错误:文件目录权限配置 当遇到 Nginx 返回 `403 Forbidden` 错误时,这通常是由于文件或目录权限设置当所致。为了确保 Web 服务器能够正常访问所需的静态资源,必须正确配置文件系统的权限。 #### 正确设定文件和目录权限 对于 Linux 系统而言,理想的权限分配如下: - **根目录**应具有适当的读取和执行权限以便于遍历子项;建议使用命令 `chmod 755 /path/to/root` 来赋予所有者完全控制权以及同组和其他人的只读加可进入的权利[^1]。 - **HTML 文件及其他公开文档**应该给予所有人至少有阅读的能力,可以通过运行 `chmod 644 filename.html` 设置单个文件的权限[^2]。 - 如果存在上传功能,则对应的存储路径需额外开放写入许可给特定用户或进程,比如通过 `chown www-data:www-data uploads_folder && chmod 750 uploads_folder` 调整所属关系并限制外部修改尝试[^3]。 此外,在某些情况下,默认安装后的 webroot 可能继承了过严的安全属性,像 `-rwx------` 这样的模式就会阻止任何非属主身份下的 HTTP 请求成功加载页面内容[^5]。因此,适当放宽此类约束也是必要的操作之一。 最后值得注意的是,除了调整本地磁盘上的 ACLs 外,还需确认 nginx.conf 中定义的服务端点指向确实存在的物理地址,并且该处放置的内容结构满足预期请求模式的要求——即存在空缺索引页等问题引发间接性的授权失败现象[^4]。 ```bash # 修改整个网站根目录及其内部所有项目的一般做法 find /var/www/html -type d -exec chmod 755 {} \; find /var/www/html -type f -exec chmod 644 {} \; # 特定情况处理(例如针对上载区) sudo chown -R www-data:www-data ./uploads/ sudo find ./uploads/ -type d -exec chmod 750 {} \+ ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值