【发布时间】:2014-02-10 19:44:20
【问题描述】:
我已经在 Windows 7 上的 VMware Workstation 中安装了 fedora 20。在我通过 yum install nginx 安装 nginx 之前一切正常。编辑 nginx.conf 后(仅更改位置/根目录)
location / { root /mnt/hgfs/www; index index.html index.htm; }
我尝试通过systemctl start nginx 启动 nginx。 Nginx 处于活动状态,但无法访问根文件夹。日志显示13: Permission denied。我确定 nginx 有访问该文件夹的权限。
起初,我认为这可能是因为 HGFS。我将root更改为/usr/share/nginx/html,问题解决了。但我不会将此文件夹用作我的根目录。
所以我通过mount /dev/sdb1 /www(格式化为ext4)挂载了一个新磁盘,设置为777并更改了nginx.conf。然后问题又出现了。
我之所以指定systemctl,是因为我尝试通过sudo nginx来运行nginx。一切都很完美,没有错误出现。
systemctl 是否对不同的文件系统有问题?但是 sdb1 和原始文件系统的格式是一样的。
我能做些什么来解决这个问题?
【问题讨论】:
-
我尝试将 nginx root 更改为
/。然后奇怪的事情发生了。当sudo nginx运行nginx时,会显示所有文件夹,但是systemctl nginx start运行nginx时,三个文件夹消失,分别是/root/lost+found/www。这两种方式有什么区别? -
/mnt/hgfs/www的权限是什么?看看你能不能看到那个目录为nginx:# sudo -u nginx ls -l /mnt/hgfs/www/ -
@pferate 是的,我可以看到。我认为可能有类似 chroot 的东西来禁止显示这些文件夹。
-
“我已经在 Windows 7 上的 VMware Workstation 中安装了 fedora 20。” - 那句话中没有任何东西是代码。请不要在那里使用反引号。
-
@ThiefMaster 那些反引号不是我自己用的,是 JordanD 编辑的。
标签: linux nginx systemd fedora20