首页 > 解决方案 > 更改 Apache2 中的默认主页

问题描述

我的目录结构是

app - index.php home - index.php index.php

我希望用户每次访问http://example.com时都可以查看 home/index.php,但如果他们也使用导航进行导航,我希望用户也可以访问http://example.com 。

我的问题是,我可以配置 apache 以使网站默认主页而不是根目录。我不介意用户是否第一次被重定向到 home/index.php。

标签: phpapache2configure

解决方案


你当然可以。只需设置一个 vhost 以使 DocumentRoot 语句指向您希望根目录成为的任何内容。例如:

<VirtualHost *:80>
  ServerName example.com
  DocumentRoot "/var/www/my_site/home"
</VirtualHost>

但请注意,在此之后,DocumentRoot 路径中的任何 updir 都将超出 Apache 的范围。但是,您可以使用 PHP 中的 require/include 函数来包含文件 updir。

您可能还需要一个 Directory 语句来指定对该目录的访问权限。一个例子可以是:

<VirtualHost *:80>
  ServerName example.com
  DocumentRoot "/var/www/my_site/home"

  <Directory "/var/www/my_site/home">
    Options Indexes FollowSymLinks
    AllowOverride All
    Order allow,deny
    allow from all
  </Directory>

</VirtualHost>

另外不要忘记在 vhost 配置文件中进行任何更改后重新启动 Apache。


推荐阅读