我一直在研究和尝试一周来完成这项工作,但我还没能找到解决方案。我确信这是可能的,但我不是巫毒魔法深处的专家。
设置:
目标:
我遇到的最大问题是每次URL更改时,Apache都会再次遍历您的.htaccess文件。所以我陷入了这些重写循环。我已经尝试过查看Apache提供的所有可能工具,但我在这里认真对待过。我可以提供我尝试过的例子,他们显然不正确,但问我,我可以发布。
答案 0 :(得分:0)
您最好改变 httpd.conf 中的 DocumentRoot ,并在 utils 目录中进行映射, 位置指令。它会更清晰,而且Apache不必为每个请求做一些诡计。
无论如何,以下几行应该有效。
# Stop direct access
RewriteCond %{HTTP_REFERER} !mysite.com [NC]
RewriteRule /?mantisbt/currentver/mantis-1.3.19 / [NC,L,R=301]
# Internally Rewrite everything apart from /utils to /mantisbt/mantis-1.3.19/
RewriteCond %{HTTP_REFERER} !mysite.com [NC]
RewriteCond %{REQUEST_URI} !/utils [NC]
RewriteRule .* /mantisbt/currentver/mantis-1.3.19%{REQUEST_URI} [L]