我有一個像about.php網址?LANG = EN和我想改變它about.php/EN 我已經試過htaccess的查詢字符串重定向到路徑
<pre>
RewriteCond %{THE_REQUEST} ^GET\ /\?(([^&\s]*&)*)lang=([^&\s]+)&?([^\s]*)
RewriteRule ^(.*)$ /lang/%3?%1%4 [L,R=301]
</pre>
在htaccess,但它DOEN」工作。
我有一個像about.php網址?LANG = EN和我想改變它about.php/EN 我已經試過htaccess的查詢字符串重定向到路徑
<pre>
RewriteCond %{THE_REQUEST} ^GET\ /\?(([^&\s]*&)*)lang=([^&\s]+)&?([^\s]*)
RewriteRule ^(.*)$ /lang/%3?%1%4 [L,R=301]
</pre>
在htaccess,但它DOEN」工作。
您可以使用此:
RewriteEngine on
#redirect /about.php?lang=lang to /about.php/lang
RewriteCond %{THE_REQUEST} /about\.php\?lang=([^\s&]+) [NC]
RewriteRule^/about.php/%1? [L,R]
#internally forward /about.php/lang to /about.php?lang=lang
RewriteRule ^about\.php/([^/]+)/?$ /about.php?lang=$1 [L]
不要刪除最後一個?否則,mod-rewrite會將舊的查詢字符串追加到目標網址。
這不是爲apache? – Mox