2011-01-14 34 views
0

你如何繞過默認行爲#(井),這是去一個頁面的特定部分?我的問題是,該#字符是SEO友好的URL這是一個標題和#(井)的部分是內容的一部分(即像C#)。我無法檢索整個字符串,我只能得到#之前的字符。如何在SEO友好的URL中處理#(散列)字符?

例子:

www.domain.com/C#-programming-book 
在這個例子中,我只得到 'C',而不是 '-programming書' 部分

。我目前沒有使用任何JavaScript,只想使用PHP解決方案。

在有人建議我使用url編碼之前,seo友好url的標準是它應該是人類可讀的並且容易記住。所以將散列轉換爲'%23'不會通過標準。

有沒有辦法解決它?

+0

是的,我也注意到了,但我在想,如果有任何其他的替代解決方案。 – arvinsim 2011-01-14 07:58:07

回答

5

#是您無法更改的定義方式URL工作的一部分。在發出請求之前,瀏覽器將剝去#及其後面的任何文本。一旦獲得響應,它就會搜索頁面中的名稱爲#的元素。

做大多數人做的事,並將其改爲「尖銳」一詞。即「CSHARP」

1

#字符在URL中的特殊含義都需要被編碼爲%23,如果他們要顯示的數據。