我想尝试更改某些网址格式,同时想要排除某些网址:
myurl.come/usa/(.*)
---> myurl.come/usa/(.*)+2014
而myurl.come/usa/music-events/
将保持不变。
这是我需要的,但不知道如何正确编写它:
RewriteCond %{REQUEST_URI}!^usa/music-events [AND]
RewriteCond %{REQUEST_URI} usa/(.*)
RewriteRule ^usa/(.*) /usa/Concat($1,2014 ) [R=301,L]
答案 0 :(得分:2)
这应该有效:
RewriteEngine on
RewriteCond %{REQUEST_URI} !^/usa/music-events
RewriteCond %{REQUEST_URI} !^/usa/(.*)-2014
RewriteCond %{REQUEST_URI} ^/usa/(.*)
RewriteRule ^usa/(.*)$ /usa/$1-2014 [R=301,L]
这会将usa/sometitle
更改为usa-sometitle-2014
,但我不会更改/usa/music-events
答案 1 :(得分:1)
这条单线规则对您有用:
RewriteEngine On
RewriteRule ^(usa)/((?!(?:music-events|2014)).+)$ /$1/$22014 [R=301,L,NC]