Apache:来自其他目录的复制文件不起作用

时间:2013-07-23 01:08:17

标签: apache http-status-code-403 cp directoryindex

我最近在我的Oracle Linux计算机上用PHP(5.3)设置了我的Apache服务器(2.2)。最初,我创建了三个文件:index.htmlindex.phpcountries.html。我相信(不记得100%)我在/var/www/html/文件夹中创建了这些文件,并且这些文件自动为所有者和组提供了 root 权限。但是,当我将index.html复制到我的主目录(而不是root)时,我无法再访问该文件(403 Message - Forbidden access),即使我将其移回原始{{1} }文件夹并将其对所有者和组的权限更改回 root

值得注意的是,我的/var/www/html/文件是默认页面,即使它未列在index.php中。此外,我通过复制DirectoryIndex文件,删除原始文件,将复制的版本移回index.php文件夹并更改权限来试验我的/var/www/html/文件。相同的结果,它不起作用。唯一的区别是php文件引发了内部服务器错误(HTTP错误500)。

我已将countries.html文件添加到我的DirectoryIndex行,现在它将显示为默认页面。但是,如果我将其删除并按原样保留DirectoryIndex行:

DirectoryIndex index.html index.html.var

然后它将默认为我的index.php页面并输出内部服务器错误。

现在,我发现了一些问题:

  1. 尽管拥有相同的权限,但复制的文件仍无效。我相信我复制index.php文件的实验证明了这一点。
  2. 默认页面index.php未列在DirectoryIndex中,但仍然是默认页面。
  3. 任何帮助/见解都将不胜感激。

1 个答案:

答案 0 :(得分:0)

如果您使用的是旧的PHP版本,并且在您的php文件中有一些与新的php版本相关的语法,也可能发生这种情况。在php 5.3中,我们没有短数组符号,但在5.5中我们也有5.4,我猜也可以给出内部服务器错误。

通过

查看您的php版本
php -v

如果它的5.3或更低版本检查你的php文件,如果包含任何新的东西,如新的短数组符号[]。

不知道我在你想要的相同环境中说话。因为我不太清楚这个问题。