我想改写这个网址:困难的Apache URL重写
myhost.com/elecresult-Cantonales-2011/039/03915.html
这一个:
myhost.com/elecresult-Cantonales-2011/(path)/039%2F03915.html
你能不能帮我重写规则?有没有可能urlencode?
我想改写这个网址:困难的Apache URL重写
myhost.com/elecresult-Cantonales-2011/039/03915.html
这一个:
myhost.com/elecresult-Cantonales-2011/(path)/039%2F03915.html
你能不能帮我重写规则?有没有可能urlencode?
在你的RewriteRule中使用正则表达式来匹配你已经布置的路径。
如果你想匹配一个通用路径,即/ first/second/third,你可以使用这个正则表达式:^ /(。+)/(。+)/(。+)$。您使用符号$ n(其中n是1 - 10)来匹配相应的捕获。要将其更改为/ first // secondthird,请指定替换字符串: $ 1 // $ 2 $ 3
以下片段应该这样做。您可以将它添加到您的虚拟主机指令,.htaccess文件或目录指令中的httpd.conf中。
[L]指定写这条规则并停止。
<IfModule mod_rewrite>
RewriteEngine on
RewriteRule ^/(.+)/([0-9]+)/(.+)$ $1/(path)/$2%2F$3 [L]
</IfModule>
谢谢。我要试一下。 如何使用'elecresult-'模式匹配URL? – Franck
到目前为止你有多远?什么有效/什么不是? –