重写相对于当前目录的URL

时间:2013-12-07 08:05:06

标签: .htaccess

我有一个目录:/ test,在该目录中我有一个名为World.txt的文件。以及位于/ test目录中的.htaccess文件。

当用户转到http://example.com/test/Hello.txt时,应将其重定向到http://example.com/test/World.txt

所以我把它放在.htaccess文件中:

RewriteRule Hello.txt World.txt

这不起作用,我认为它正在做http://example.com/test/Hello.txt - > http://example.com/World.txt

好像我试试:

RewriteRule Hello.txt /test/World.txt

它有效,但这意味着如果我重命名测试目录,我必须记住更改重写规则。

是否有一个标志或某些东西使重定向路径相对于当前目录?

1 个答案:

答案 0 :(得分:1)

您可能在顶部有RewriteBase行:

RewriteEngine On
RewriteBase /test/

RewriteRule ^Hello\.txt$ World.txt [NC,L]

您可以在此.htaccess中使用任意数量的规则,而不必在每条规则中重复/test/

编辑:另一方面,对我来说这甚至没有RewriteBase行:

RewriteRule ^Hello\.txt$ ./World.txt [NC,L]