2012-03-29 75 views
1

我試着做一些搜索(並拿出這個:How to rewrite a URL with %23 in it?),但它不是我想要的。用%23重寫一個網址到#

我有一個網站,帶有標籤內容部分(X選項卡,Y選項卡,Z選項卡等)。有鏈接:www.site.com/#x-tab。然後,我使用jQuery來監視每當一個選項卡鏈接被點擊並顯示選定的內容。這工作正常。

我注意到我的日誌中有很多404錯誤,指向www.site.com/%23x-tab,www.site.com/%23y-tab等,所以想重寫%23 * -tab到#* - 選項卡(因爲它我想X,Y,Z是動態的)。

會很感激的幫助

回答

1

我設法通過NE標誌,即解決這個問題:

RewriteRule ^#x-tab/[R=301,L,NE] 
2

有一點混亂這裏:
當您使用瀏覽器%23發送此字符作爲URL的一部分正好。但是當您使用#瀏覽器不會發送#以及其後的任何內容作爲URL的一部分。所以www.site.com/#x-tab意味着www.site.com/作爲URL(並被請求),但x-tab作爲位置散列。但是當您使用www.site.com/%23x-tab瀏覽器發送(確切)到服務器。並且web服務器在服務器上搜索文件23x-tab
所以你想要的是使用#不是%23

+0

謝謝你的回覆。基本上,我有很多404在我的服務器日誌,其中googlebot/bingbot試圖抓取site.com/%23x-tab我得到一個電子郵件,無論何時生成一個404,所以我試圖阻止這些URL生成404。基本上我想請求%23x-tab重定向到#23x-tab – rwb 2012-04-14 10:44:50