RewriteRule为url的动态部分,不是永久性的

时间:2014-11-16 20:27:59

标签: apache .htaccess mod-rewrite url-rewriting friendly-url

我有一个

RewriteRule ^([^/]+)/id([0-9]+)/?$ /?page=$1&id=$2&location=$3 [L]

我需要为part& location =

制定规则

url& location =的这一部分不是永久性的。最初提供的网址没有& location =但有些链接将包含部分内容,我需要将其添加到RewriteRule。

我试图这样做

RewriteRule ^([^/]+)/id([0-9]+)/([0-9]+)/?$ /?page=$1&id=$2&location=$3 [L]

但在这种情况下,网址就像这样

http://www.example.com/travel/id725
没有第3个参数,找不到

。但我需要双向工作

http://www.example.com/travel/id725
AND
example.com/travel/id725/43

请帮帮我吗?

1 个答案:

答案 0 :(得分:1)

您可以添加两个不同的规则。首先,当存在所有三个参数时;然后是仅存在两个参数的情况。

RewriteRule ^([^/]+)/id(\d+)/(\d+)/?$ /?page=$1&id=$2&location=$3 [L]
RewriteRule ^([^/]+)/id(\d+)/?$ /?page=$1&id=$2 [L]