nobody 2011-8-25 10:24
Apache Rewrite 帶有參數 301 轉址解決方式
如果想要將Discuz 6.x 動態網址變成靜態網址...
例如要將 [url=http://dz.adj.idv.tw/viewthread.php?tid=1074]http://dz.adj.idv.tw/viewthread.php?tid=1074[/url] ==> [url=http://dz.adj.idv.tw/thread-1074-1-1.html]http://dz.adj.idv.tw/thread-1074-1-1.html[/url] (301轉址方式)
其實只要在RewriteRule規則 Substitution 的最後,加上一個問號( ? )即可,相當於添加了一個空的 Query String ,這樣也就告訴 Apache 的 mod_rewrite 模塊,將使用新的 Query String ,而不是繼續使用原來的 Query String .而 mod_rewrite 模塊將會對於空的 Query String 進行忽略處理,剛好可以完美解決這個問題。
語法分享:
[code]
RewriteEngine On
RewriteBase /
RewriteCond %{QUERY_STRING} ^tid=([0-9]+)$ [NC]
RewriteRule ^viewthread\.php$ thread-$1-1-1.html? [R=301,L]
[/code]
這樣就可以啦~~