Nginx 403 forbidden 问题
# 前言
本文将会记录 Nginx 出现 403 forbidden (13: Permission denied)报错的四种方法
# 方案
# 启动用户
可能是因为 Nginx 启动用户不一致,我们可以使用下面命令分别查看 nginx 启动用户和实际启动用户
ps aux | grep "nginx: worker process" | awk '{print $1}'
1
然后我们修改 nginx.conf 即可
vim /etc/nginx/nginx.conf
# 修改启动用户
user root;
1
2
3
4
2
3
4
# 缺少文件
如果是 /usr/share/nginx/html
文件夹下缺少 index.html
文件也会出现 403 错误
location / {
root /usr/share/nginx/html;
index index.html index.htm;
try_files $uri $uri/ /index.html;
}
1
2
3
4
5
2
3
4
5
# 缺少权限
我们可以修改 web 目录的读写权限
chmod -R 755 /data
1
或者说修改目录的所属用户为 Nginx 启动用户(当然可以直接修改 conf 文件,改动 Nginx 启动用户)
chown -R root:root /data
1
# selinux
我们可能设置为 SELinux 开启状态(enabled)的原因
查看 selinux 状态
/usr/sbin/sestatus
1
然后将SELINUX=enforcing 修改为 SELINUX=disabled 状态
vi /etc/selinux/config
#SELINUX=enforcing
SELINUX=disabled
1
2
3
2
3
最后重启服务器即可
编辑 (opens new window)
上次更新: 2023/10/20, 02:29:03