.htaccess RewriteRule所以用户查看example.com/folder但是服务于example.com/f1/f2/f3/folder/index.php

时间:2009-12-18 06:36:01

标签: url .htaccess mod-rewrite

我正在尝试制作一个.htaccess RewriteRule,以便访问者查看example.com/folder

但服务

example.com/f1/f2/f3/folder/index.php

其中f1/...只是一个任意行的文件夹。

我已经踢了mod_rewrite一点点,并得到了一些非常奇怪的结果,但我没有去过。

1 个答案:

答案 0 :(得分:1)

我不太确定你想要实现的目标。但是,这可能会解决您的问题。基本上,它会将/folder/folder//folder/...的任何查询翻译为/f1/f2/f3/folder/...

RewriteRule ^folder(/.*)?$ f1/f2/f3/folder$1

修改
如果你不关心site.com/folder之后的任何事情,这应该就足够了:

RewriteRule ^folder$ f1/f2/f3/folder/index.php

编辑#2
重写根(根据OP的评论):

RewriteRule ^(.*)$ folder1/folder2/$1 [QSA]

但是,可能还有其他(更好的?)方法来翻译根目录。

QSA指令

Docs are available