我在CentOS 6上运行Nginx,每当我尝试访问我的网站时,我总是得到403 Forbidden ......
我的配置文件如下所示:
server {
listen 80;
server_name mysite.com www.mysite.com;
location / {
root /home/mysite/www;
index index.html;
}
}
这就是我在error.log中找到的内容
[error] 16853#0: *29 open() "/home/mysite/www/index.html" failed (13: Permission denied), client: xxx.xxx.xxx.xxx, server: mysite.com, request: "GET /test.html HTTP/1.1", host: "mysite.com"
我还对这些目录运行“ls -l”,认为它是关于chmod问题的......这就是我得到的:
ls -l / usr / share / nginx / html(工作)
-rw-r--r-- 1 root root 3652 Apr 26 20:36 index.html
ls -l / home / mysite / www(不工作)
-rw-r--r-- 1 mysite mysite 3652 Apr 26 20:36 index.html
----------------------------------------编辑
ls -ld / home / mysite / www
drwxr-xr-x 2 mysite mysite 4096 Jul 20 20:52 /home/mysite/www
ls -ld / home / mysite
drwxr-xr-x 2 mysite mysite 4096 Jul 20 20:52 www
ls -ld / home
drwx------ 4 mysite mysite 4096 Jul 20 18:39 mysite
答案 0 :(得分:2)
你说:
ls -ld /home
drwx------ 4 mysite mysite 4096 Jul 20 18:39 mysite
如果nginx作为普通用户运行,可能是“mysite”以外的其他用户,则它无法访问/ home,因为只有mysite
和root
用户拥有此权限。
要找出运行的用户nginx的类型:
ps faxu
..并搜索nginx进程。 要获得nginx用户,请执行
ps faxu | grep nginx