【发布时间】:2020-10-06 23:09:38
【问题描述】:
我当前的 apache 配置:
<VirtualHost *:80>
ServerAdmin admin@example.com
DocumentRoot /var/www/html/lwiki
ServerName wikiserver.internal
ServerAlias wikiserver
<Directory /var/www/html/lwiki>
Options +FollowSymlinks
AllowOverride All
Require all granted
</Directory>
</VirtualHost>
当浏览到wikiserver.internal 时,文件夹/var/www/html/lwiki 的索引被调用,正如预期的那样。
因为我已经从旧机器上迁移了 wiki,所以我需要确保文件夹 lwiki 也包含在 URL 中。
例如:
http://wikiserver.internal/index.php
应该在浏览器的导航栏中显示为
http://wikiserver.internal/lwiki/index.php
如何确保lwiki 文件夹确实应包含在所有 URL 中。
【问题讨论】:
-
是的,听起来像是一个计划。恐怕你忘了问问题了……
-
如果问题是“如何实现这一目标?”,那么答案是:您通过从中删除
lwiki文件夹来更改DOCUMENT_ROOT,然后为所有请求添加重定向规则没有具有以/lwiki/前缀开头的路径。您会在 SO 上找到许多现有答案,这些答案都证明了这种规则。虽然我个人总是建议从查看文档开始,这些文档是开源软件的典型文档,具有出色的质量并带有很好的示例:httpd.apache.org/docs/current/mod/mod_rewrite.html -
@arkascha 谢谢,关于重写规则本身的例子有什么想法吗?精炼大量不同的变体。是的,您对我的问题的猜测是正确的,我编辑了问题。