看这里,nginx访问静态资源时网页出现 403 forbidden 解决办法

环境:我在用nginx做静态资源服务器,访问Linux下的一个图片时网页中出现403 forbidden。

怎么解决?

原因分析

先来看下http状态码403啥意思?

表示资源不可用。服务器理解客户的请求,但拒绝处理它,通常由于服务器上文件或目录的权限设置导致的WEB访问错误。

简单说就是无权访问该资源。
为了确定原因我又查看了nginx的错误日志/usr/local/nginx/logs/error.log

2020/02/12 22:56:24 [error] 5102#0: *107 open() “/opt/img/1.jpg” failed (13: Permission denied)

发现 Permission denied 这个短语很常见啊,就是权限被拒绝。

ok,原因找到就是用户对该资源没有访问权限。既然没有访问权限,那就修改该资源的访问权限就行了呗,一行指令的事。
进入到该资源所在的目录:

chmod 777 1.jpg
意思是,所属用户、所在组、其他用户对该资源都有读写可执行的权利。

网上说的把nginx.conf 全局块的user值改成root,也不一定对。主要是你要看这个资源的所属用户是谁,user的值要和这个资源的所属用户一致才行。光改成root,万一该资源的所属用户为aaa,你改成root也没用啊,是不?

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值