在虚拟主机之外添加 apache2 DirectoryIndex

在虚拟主机之外添加 apache2 DirectoryIndex

我的服务器上有多个虚拟主机网站,如果不存在索引文件,我想让 Apache 加载一组文件。我试过

DirectoryIndex /index.php

但这只会加载虚拟主机根目录下的索引。接下来我尝试

DirectoryIndex /var/www/index.php

但返回了 404 错误。所以我又尝试

DirectoryIndex /../index.php

但结果也返回了 400 错误。Google 中的所有结果都是关于如何禁用默认索引,而不是替换它。

我的文件树是

www > index.php (file I wish to load if no index)
      virtualhostsite1 > pages
                         subdirectories
                         etc.
      virtualhostsite2 > pages
                         subdirectories
                         etc.
      virtualhostsite3 > pages
                         subdirectories
                         etc.

简而言之,我想更换这个屏幕自定义索引存储在硬盘驱动器上其他位置的 Apache 根目录之外。我希望这是合理的。

答案1

根据Apache HTTPd 文档,你只需使用

DirectoryIndex index.php

这将使用该文件index.php作为每个目录内的目录索引。

您还可以提供要尝试的文件列表。因此,如果不index.html存在,index.php则应使用(如果存在)。

DirectoryIndex index.html index.php

文档说:

Local-url 是服务器上相对于请求目录的文档的(%编码)URL;它通常是目录中文件的名称。

所以我猜你已经很接近了。尝试:

DirectoryIndex ../index.php

相关内容