2012-10-18 198 views
2

我搜索了很多關於htaccess的主題,但仍然沒有成功。htaccess - 重定向查詢字符串,並從URL中刪除它

我希望當人們鍵入地址:

http://domain.com/?q=filename1 
http://domain.com/?q=filename2 
... 

它會自動重定向到:

http://domain.com/download/filename1.html 
http://domain.com/download/filename2.html 
... 

我嘗試:

RewriteEngine On 
RewriteRule ^/?q=(.*)$ /download/$1.html [L,R=301] 

但它無法正常工作。我怎樣才能解決這個問題?

回答

3

使用可能會有所幫助:

RewriteEngine On 
RewriteCond %{QUERY_STRING} q=(.*) 
RewriteRule ^q(.*) /download/%1.html [L,R=301] 

編輯:

試試這個:)

RewriteEngine On 
RewriteCond %{QUERY_STRING} q=(.*) 
RewriteRule ^(.*) /download/%1.html? [L,R=301] 

通過使用?查詢字符串將被刪除;)

+0

謝謝Mehrnaz K.但它重定向到http://domain.com/downl OAD/filename1.html Q =文件名1和不存在 –

+0

請修復,如果用Q =文件名1它不顯示內容,並說:??頁面沒有正確重定向 的Firefox已經檢測到服務器將以永遠不會完成的方式重定向該地址的請求。 此問題有時可能由禁用或拒絕接受 Cookie引起。 –

+0

我更新了我的anser,請檢查這個解決方案:) – Mimi

相關問題