尝试mod_rewrite目录

时间:2012-02-10 16:10:01

标签: mod-rewrite apache

我正在尝试使用httpd

进行mod_rewrite

我想要来源:

www.foo.bar.com/abc/

转到目的地:

www.foo.bar.com/def/

所以我到了:

RewriteRule ^abc/([^/\.]+).$ def/$1 [L]

但是我不仅仅想要那个页面,我希望网址后面的所有后续页面都能重写。

示例www.foo.bar.com/abc/blahblahblah1.html转到www.foo.bar.com/def/blahblahblah1.html

问题是我不认为这是对的,因为它似乎不起作用。

2 个答案:

答案 0 :(得分:0)

RewriteEngine On
RewriteRule ^/abc/(.*)$ /def/$1

简化了一点,因为我不确定为什么你要在任何给定的'/'或'。'停止重写。 - 可能导致一些奇怪的行为。

这假设您在.htaccess(在文档根目录中)执行重写,而不是httpd-vhosts.conf(两者之间的路径可能略有不同)。

答案 1 :(得分:0)

RewriteEngine On
RewriteBase   /

RewriteRule ^abc/(.*)   def/$1               [L,NS]

这假定.htaccess在您的DOCROOT中。始终指定一个基础 - 对于您的文档根目录。不要包括前导/用于每个目录(在.htaccess中)。