关于Nginx open() “/xxx/xxxx(dir path)” failed (13: Permission denied)的错误

本文来自:http://laymanz.com/blog/?p=239

在我的Nginx上新增了一个虚拟主机,访问时出现403。
Nginx的error.log 报以下错误: *2658 open() “/xxx/xxxx(dir path)” failed (13: Permission denied)

错误原因:
1. 运行nginx worker进程的帐号没有目标访问目录的读与执行权限。
2. 运行nginx worker进程的帐号没有目标访问文件的读权限。

写个例子。
虚拟主机设置如下:

server {
listen 80;
server_name sample.com;

location / {
root /home/sample/html/;
index index.html;
}
}

默认状态下,nginx worker进程是以nobody的帐号运行的。这可以用ps aux| grep nginx命令查看。

nobady帐号必须具备/home/sample/html/整个目录的读与执行权限。
如果要访问sample.com/index.html,那么nobady帐号必须具备/home/sample/html/index.html的读权限。否则就会报错。


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值