By东关

nginx 搭建图片服务器出现 403 forbidden的解决方法
2021-07-15

首先了解下:403 forbidden错误是禁止读取访问。也就是说服务器理解了请求,但是不允许访问。

先看下初始nginx配置:

#user nobody;# 注意这里,nginx没有使用什么身份运行
...
http {
....
server {
...
#配置图片访问
location ~ \.(gif|jpg|jpeg|png|bmp|swf)$ {
#默认的图片路径,也是ftp上传文件存放的路径,只要后缀是以上的都会到这个路径下搜索
root /home/ftpuser/www/images;
}

....
配置的图片位置是:root /home/ftpuser/www/images;

解决:
先确定路径是否存在:cd /home/ftpuser/www/images。命令执行正常。
出现这个问题的原因是文件访问权限限制。

在我搭建的过程中,/home/ftpuser 是用户ftpuser 的,可以访问的只有root用户和ftpuser用户,解决这个访问权限有两种解决方法。

第一种:修改相关文件夹的访问权限(在这里是www/iamges),使任何用户可以访问。
第二种:修改nginx运行用户。
在nginx的配置文件nginx.congf 中,在开头添加这一句:
user root
当然,创建该文件夹的用户也可以,总之该用户可以访问这个文件夹。

修改之后,记得重启nginx。

修改之后,访问成功。

你必须 登录 才能发表评论.

  • 还没有人留下脚印噢,快来踩踩叭