php - 更改 Apache2 中的默认主页
问题描述
我的目录结构是
app
- index.php
home
- index.php
index.php
我希望用户每次访问http://example.com时都可以查看 home/index.php,但如果他们也使用导航进行导航,我希望用户也可以访问http://example.com 。
我的问题是,我可以配置 apache 以使网站默认主页而不是根目录。我不介意用户是否第一次被重定向到 home/index.php。
解决方案
你当然可以。只需设置一个 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。
推荐阅读
- python - 小粒子动能和恢复系数的单位或数学运算误差
- python - 检查路径中是否有字符串并执行某些操作
- reactjs - 像在购物网站中一样单击另一个图像一样更改图像
- python - 如何同时从两个订阅者获取数据
- kubernetes - 无法访问部署在 Kubernetes 系统上的应用程序 UI
- tsql - xml 节点未处理空节点
- java - ChromeDriver ERR_SSL_PROTOCOL_ERROR 尽管 --allow-insecure-localhost
- user-agent - 根据用户代理字符串区分各种 roku 设备?
- java - 如何从 Java 中的 Stack 底部删除元素?
- ruby-on-rails - 如何验证子关联的选定 ID 在保存时对于父级是唯一的?