AH00112:警告:DocumentRoot [/home/rails/testapp/public] 不存在

AH00112:警告:DocumentRoot [/home/rails/testapp/public] 不存在

我点击了这个链接https://www.digitalocean.com/community/tutorials/how-to-deploy-a-rails-app-with-passenger-and-apache-on-ubuntu-14-04在 ubuntu 14.04 上安装 ruby​​ on rails 和 Passenger,出现以下错误:

'AH00112 Warning: DocumentRoot [/home/rails/testapp/public] does not exist' when it does exist.

当我尝试在浏览器中输入 URL 或 IP 地址时,它说我没有权限访问服务器,但我按照网站上的步骤逐字逐句地操作。有人能给我一些建议吗?如果可以的话,请尽快!

答案1

我注意到很多人在那篇文章下评论时遇到了同样的问题。我马上就看到,他创建的目录是用户主目录中的“rails”,这是在将其移动到 /root/testapp/public 之前尝试的第一个位置

默认权限使主目录(包括根目录)保持私密。这意味着,尽管您使用指令在 Apache 配置文件中允许访问Require All Granted,但这样做只是告诉 Apache 可以提供文件。但如果文件夹本身没有正确的权限设置,Apache 将无法读取目录以提供文件。

Apache 需要对该目录具有读取和执行权限,以及对该目录直至根目录的所有目录具有执行权限。因此,我将应用程序移回其原始位置 /home/rails/testapp/public,然后运行以下命令以确保权限正确:

sudo chmod +x /
sudo chmod +x /home
sudo chmod +x /home/rails
sudo chmod +x /home/rails/testapp
sudo chmod -R +xr /home/rails/testapp/public

相关内容