2014-09-29 51 views
3

我試圖將/streams/post.php?id=1改寫爲/streams/thread/1Htaccess重寫子文件夾中的參數

我確實發現了一些帶參數的.htaccess代碼,但它在子文件夾中不起作用。

,我應該在子文件夾中使用另一個.htaccess或使用主目錄上的? (/.htaccess/streams/.htaccess

另外,當我重寫過去,有時它從例如/streams/thread/1重定向到/streams/post.php?id=,有時它實際上在URL顯示/streams/thread/1,我想它在URL顯示/streams/thread/1,不只是重定向。

回答

2

你可以把你的htaccess放在root或者streams文件夾中(這取決於你)。

在根文件夾

RewriteEngine On 
RewriteBase/

RewriteCond %{THE_REQUEST} \s/streams/post\.php\?id=([0-9]*)\s [NC] 
RewriteRule . streams/thread/%1? [R=301,L] 

RewriteRule ^streams/thread/([0-9]+)$ streams/post.php?id=$1 [L] 

在流文件夾

RewriteEngine On 
RewriteBase /streams/ 

RewriteCond %{THE_REQUEST} \s/streams/post\.php\?id=([0-9]*)\s [NC] 
RewriteRule . thread/%1? [R=301,L] 

RewriteRule ^thread/([0-9]+)$ post.php?id=$1 [L] 
+0

謝謝!假設我想在幾個主板(流是一個主板)上執行此操作,我是否會簡單地複製RewriteBase下的所有內容(以root身份執行此操作),並將「流」更改爲其他主板命名的內容? – Odin 2014-10-07 22:09:03

+0

是的,如果你的其他董事會是相同的情況 – 2014-10-08 16:11:43