权限问题:Apache如何访问我的主目录中的文件?

Modified on: Sat, 09 Jun 2018 22:47:23 +0800

我知道之前已经介绍过文件权限,但是我很难理解我的方案的概念。

  • 我在旧的ubuntu安装上创建了文件。
  • 我已将文件复制到我的新ubuntu安装中并将它们放入我的webroot中。
  • 当我尝试运行文件(它们是PHP文件)时,我收到与权限相关的错误

为了解决此问题,我认为它们仍然必须由前一个所有者拥有,所以我在目录上运行chown -R,并以我的用户名作为参数,以便取得目录中所有文件的所有权。应该注意的是,新旧ubuntu安装之间的用户名是相同的。

当我再次尝试运行文件时,同样的问题:由于权限问题导致500错误。谁能告诉我我应采取的其他步骤?

我的apache安装的webroot位于我的主文件夹中。如果我在我的webroot中创建新文件,它们也会按预期工作,它只是导致问题的旧文件。

最佳答案

webroot上面的目录应该设置执行位以允许Apache进入目录。

如果您的webroot位于/home/user/htdocs//home/home/user/home/user/htdocs应该设置执行位。


上述解决方案“有效”,但并不理想。如果您已创建文件夹,则Apache无法写入该文件夹。反过来也是如此。

这可以通过设置umask 0007并将自己添加到Apache组(www-data,如果我没有记错)来“修复”,以便新创建的文件和文件夹可由组写入。

或者,您可以安装另一个Apache MPM:Apache2 MPM ITK关于配置的信息)并调整配置,以便Apache在您的用户下运行。

作者:,Lekensteyn

相关问答

添加新评论