mod_rewrite - 更改URL的情况下
问题描述:
是否有任何直接的方式来改变使用mod_rewrite任何URL的情况?mod_rewrite - 更改URL的情况下
我认为这是相当微不足道的......显然不是。
实例:
http://example.com/id 到 http://example.com/ID
http://example.com/id/123 到 http://example.com/ID/123
等等。
答
的mod_rewrite有一些internal functions你可以使用一个映射。其中之一是toupper
是字母转换为大写:
RewriteMap uppercase int:toupper
RewriteRule [a-z] %{uppercase:%{REQUEST_URI}} [L,R=301]
答
RewriteMap uppercase int:toupper
RewriteRule ^/(^/)*$ /${uppercase:$1} [L]
RewriteRule ^/([^/]*)/(.*)$ /${uppercase:$1}/$2 [L]
(语法未选中)
答
我一直在寻找只改变ID的情况。这一招的窍门是:
RewriteRule ^id(.*)$ /ID$1 [QSA,R,L]