我有一个克隆到我的本地XAMPP服务器的纯HTML网站,它位于' foo'夹。在此文件夹中,只有.html文件和一个空的.htaccess文件。 当我打开URL localhost / foo时,browswer将打开localhost / foo / index.html文件。所以问题是,服务器如何知道打开index.html文件?
答案 0 :(得分:1)
如果您检查用于XAMPP安装的apache conf文件( C:\ xampp \ apache \ conf \ httpd.conf ),您将在 DirectoryIndex :
<IfModule dir_module>
DirectoryIndex index.php index.pl index.cgi index.asp index.shtml index.html index.htm \
default.php default.pl default.cgi default.asp default.shtml default.html default.htm \
home.php home.pl home.cgi home.asp home.shtml home.html home.htm
</IfModule>
index.html最终成为apache将尝试加载的第6个文件。您可以自定义此列表,在XAMPP控制面板中重新启动apache并使用不同的默认文件加载。
答案 1 :(得分:0)
这由Apache配置DirectoryIndex
确定。例如:
# DirectoryIndex: sets the file that Apache will serve if a directory
# is requested.
#
# The index.html.var file (a type-map) is used to deliver content-
# negotiated documents. The MultiViews Option can be used for the
# same purpose, but it is much slower.
#
DirectoryIndex index.php index.html index.html.var
答案 2 :(得分:0)
当没有显式请求其他页面时,服务器将打开index.html(或index.htm或index.php),因为这是网站上每个目录的默认页面。如果您要求zyx.com \ reports.html,则会打开reports.html页面,因为您指定了要查看的页面。如果您没有要求特定页面(即您在地址栏中输入zyx.com),该目录的默认页面就是索引页面,这就是打开的内容。如果您键入zyx.com并且没有为该目录创建索引页,会发生什么?服务器将返回该目录中所有文件的列表,显示指向所有文档和/或图像的链接。还会有一个指向父目录的链接,因此,在实践中,查看者可以访问您的文件以查找感兴趣的内容。
答案 3 :(得分:0)
Mostly servers support index.html as default file. But if you have any other file which you want to make it as landing page. You may change you htaccess
DirectoryIndex filename.extension
You can add multiple files there like following example. In this case anyone of theme present will be landing page. If all present then first will be given priority.
DirectoryIndex filename.extension filename.extension filename.extension