Apache2 如何使用Apache 2在子目录中自动加载index.html

Apache2 如何使用Apache 2在子目录中自动加载index.html,apache2,Apache2,我在Apache 2的子目录中自动加载index.html时遇到问题。对于根目录,index.html的自动加载工作正常 你看,为了让事情变得通用,我的web应用程序被编写成每个模块都驻留在自己的子目录中。每个文件夹有3个文件:前端的index.html(包含html+javascript)、后端的index.php(包含访问数据库的php代码)和样式的index.css 因此,要访问web应用程序中的各种模块: [概览模块]- [详情模块]- 如果没有子目录的自动加载机制,上述操作将不可能

我在Apache 2的子目录中自动加载index.html时遇到问题。对于根目录,index.html的自动加载工作正常

你看,为了让事情变得通用,我的web应用程序被编写成每个模块都驻留在自己的子目录中。每个文件夹有3个文件:前端的index.html(包含html+javascript)、后端的index.php(包含访问数据库的php代码)和样式的index.css

因此,要访问web应用程序中的各种模块:

[概览模块]-

[详情模块]-

如果没有子目录的自动加载机制,上述操作将不可能实现

我将感谢任何帮助。
多谢

最终与一位同事解决了这个问题

httpd.conf中指定的默认目录索引对我们不起作用。 即使我们的顺序是'index.html'然后是'index.php',Apache2 将首先提供'index.php'。仅当“index.php”不是 出现在同一文件夹中,然后发出“index.html”

我们找到了两种克服这一问题的方法:

假设您的文档根是“/var/www/html”

[Method 1] 1. Add a .htaccess to the root directory of your web app (e.g. /var/www/html/myapp). 2. Add the line 'DirectoryIndex index.html' to the .htaccess. 3. In httpd.conf, set 'AllowOverride' to 'All' under <Directory '/var/www/html'>. [方法1] 1.将.htaccess添加到web应用程序的根目录(例如/var/www/html/myapp)。 2.将行“DirectoryIndex.html”添加到.htaccess。 3.在httpd.conf中,将下面的“AllowOverride”设置为“All”。 [方法2] 1.在httpd.conf中,在下添加'DirectoryIndex.html'。 (注意:此“DirectoryIndex”不同于默认的DirectoryIndex 不包含在任何标签内。) 重新启动web服务器


希望这能帮助别人。谢谢

您可以在
.htaccess
文件中使用以下行:

DirectoryIndex index.html

如果您不控制服务器配置,例如使用Gitlab页面,这是很实用的。

这个问题更适合serverfault.com在httpd.conf中尝试使用
DirectoryIndex.html
。还要检查文档。@Suroot谢谢,以后将向serverfault.com发布管理问题。我之所以在这里发帖,是因为大多数程序员都必须时不时地管理他们的开发环境,我想以前可能有人遇到过这个问题。@jweyrich有趣的是,httpd.conf中默认的“DirectoryIndex”(不包含在任何标记中)对我不起作用。我在谷歌上搜索了很长一段时间,发现它对其他人也不起作用。但是,如果在下创建另一个DirectoryIndex,其中“htdocs”是您的web根目录,则它可以工作。
DirectoryIndex index.html