ubuntu – 用户主目录中的nginx 403 Forbidden Error托管

前端之家收集整理的这篇文章主要介绍了ubuntu – 用户主目录中的nginx 403 Forbidden Error托管前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我已经在我的本地机器上的Ubuntu 12.04上安装了Nginx 1.1.19并保留了默认的/etc/Nginx/Nginx.conf,除了更改用户指令.

/etc/Nginx/Nginx.conf

user Nginx www-data;
worker_processes 4;
pid /var/run/Nginx.pid;
...

我想在我的用户目录中创建一个简单的静态站点与Web根目录(假设我的用户名是’ubuntu’).这是我的测试网站的配置.

在/ etc / Nginx的/网站可用/测试现场

server {
    #listen   80; ## listen for ipv4; this line is default and implied
    #listen   [::]:80 default ipv6only=on; ## listen for ipv6

    root /home;
    index index.html index.htm;

    # Make site accessible from http://localhost/
    server_name localhost;

    location / {
    # First attempt to serve request as file,then
    # as directory,then fall back to index.html
    try_files $uri $uri/ /index.html;
    # Uncomment to enable naxsi on this location
    # include /etc/Nginx/naxsi.rules
    }

}

现在显然将我的所有文件放在web根目录中,所以我不会把它放在真正的服务器上,但这说明了我的观点.如果我在/home/index.html(不在我的ubuntu用户文件夹中)创建一个简单的网页,我可以访问http:// localhost /页面

这个工作很好.现在我想简单地将web根目录INSIDE放在用户文件夹中.所以在/ etc / Nginx / sites-available / test-site中我将root指令更改为`root / home / ubuntu;.我重新创建了测试站点的符号链接,将/home/index.html移动到/home/ubuntu/index.html并停止并启动Nginx服务器.现在我得到403 Forbidden错误.

我的第一个怀疑是,这是一个许可问题.但是,当我运行ls -al index.html时,我看到了

-rw-r--r--  1 Nginx   www-data   183 Aug 12 13:13 index.html

哪个看起来对我好?甚至运行chmod 777 /home/ubuntu/index.html以便权限

-rwxrwxrwx 1 Nginx www-data 183 Aug 12 13:13 index.html

没有帮助. /etc/init.d/Nginx configtest也不会产生任何错误,我确定/ etc /中的符号链接

所以我已经在这几个小时了,我现在想知道我的用户目录有什么特别之处,我无法提供任何内容吗?这几天Ubuntu加密主目录?这可能是问题吗?我在EC2 Ubuntu 12.04实例上也有这个问题(不知道用户目录是否在那里加密)

默认用户主目录权限

因此,Ubuntu 12.04中用户主目录的默认权限似乎是700.Nginx需要具有读取权限才能提供应该提供的文件,并且在从根到提供文件的路径中的每个父目录中都具有执行权限.

您可以通过运行为您的用户目录提供这些权限

chmod 701 user_home

您还可以使用755,这是许多系统上主目录的默认权限设置.

只要Nginx运行的用户/组(如Nginx.conf中所定义)对要提供的所有文件具有READ权限,web根目录中的目录/文件就可以属于www-data用户或常规个人用户.对所有Web根目录执行权限.

我只是将我的Web根目录中的所有目录设置为我的用户帐户所有并拥有权限755并且我将从Web根目录提供的所有文件设置为具有权限664,因为这些是我的计算机上的默认设置.

关于将权限号转换为String Rep的注意事项.

Ex. drwxr-x--x becomes 751.

忽略第一个字符(d代表目录,– 代表文件等).其余9个字符组成二进制三元组,其中任何非短划线字符为1,短划线为0.

So drwxr-x--x becomes rwxr-x--x 
becomes 111 101 001 
which is converted to a decimal 751

当我处理权限时,我需要对此进行复习.

猜你在找的Ubuntu相关文章