使用mod重写添加最后一个路径以重定向url

时间:2017-09-08 14:29:52

标签: mod-rewrite

我想知道配置mod重写的方法,以实现以下目的。

http://example.com/path1/path2/path3/.../pathn

应重定向到。

http://example.com/static/path1/path2/path3/pathn

由于

2 个答案:

答案 0 :(得分:0)

您可以使用mod-alias(RedirectMatch)指令进行此重定向:

RedirectMatch ^/path1/path2/path3/?$ http://example.com/static/path1/path2/path3

如果旧的uri是dynmic,你可以使用正则表达式来处理它:

RedirectMatch ^/(path1/.+)$ http://example.com/static/$1

第一次重定向会将 / path1 / path2 / path3 重定向到 / static / path1 / path2 / path3 ,第二次重定向会重定向 / path1 / foo / bar / static / foo / bar

如果您想使用 mod-rewrite ,您可以使用以下规则:

RewriteEngine on

RewriteRule ^/?(path1/.+)$ http://example.com/static/$1 [L,R]

答案 1 :(得分:0)

RewriteEngine on
RewriteRule ^/([a-zA-Z0-9_-]+)/([a-zA-Z0-9_-]+)/([a-zA-Z0-9_-]+)/.*/(.*)$  http://example.com/product/$1/$2/$3/$4