2014-09-03 39 views
1

在我的.htaccess文件中,我想從URL中刪除結尾的斜槓而不修改查詢字符串的當前設置。刪除結尾斜槓並使用.htaccess創建查詢字符串

我想這兩步的方式,但它不工作,我想到:

# Remove trailing slash 
RewriteRule ^(.+)/$ $1 [R=301] 
# Create query string from canonical URL 
RewriteRule ^(.+)$ index.php?url=$1 [QSA,L] 

乾杯

+0

什麼是不工作?你能更明確嗎? – 2014-09-03 13:15:44

+0

除了刪除尾部斜線併發送查詢字符串外,結果請求(和頁面)爲空。 – reekogi 2014-09-03 13:35:53

回答

1

您可以使用:

RewriteEngine On 
RewriteBase /site/dev/ 

## Unless directory, remove trailing slash 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule ^(.+?)/$ $1 [R=302,L,NE] 

RewriteCond %{REQUEST_FILENAME} !-d 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteRule ^(.+)$ index.php?url=$1 [QSA,L] 
+0

乾杯。我認爲我可以在RewriteBase(/ site/dev /)的子目錄(例如,localhost/site/dev /)中本地使用它 - 但它似乎沒有影響規則。爲我noobery道歉。 – reekogi 2014-09-03 13:30:20

+0

好的嘗試'/ site/dev/.htaccess'中的更新代碼 – anubhava 2014-09-03 13:45:35

+0

完美,謝謝。 – reekogi 2014-09-03 14:12:51

相關問題