2013-11-09 79 views
1

當使用規範URL時,尾部斜槓對根URL有什麼影響?根URL上的規範URL和尾部斜槓

我把下面的規範標籤到我的Rails網站頭:

<link rel="canonical" href="<%= url_for(:only_path => false) %>" /> 

......確保任何參數的URL解析爲基礎URL。

然而,當我瀏覽到http://www.mysite.com,規範鏈接顯示出來末斜線:

<link rel="canonical" href="http://www.mysite.com/" /> 

我知道結尾的斜槓事情做的時候的路徑元素存在於URL時,但認爲他們didn't matter on root URLs。然而,我再跑進在規範標籤馬特·卡茨介紹,他明確指出,它們被認爲是不同的URL:

http://www.mattcutts.com/blog/canonical-link-tag/(見幻燈片3):

這些網址都是不同的:

  • www.example.com
  • example.com
  • www.example.com/
  • 前ample.com/

任何人都可以揭示他的意思一些輕?

+0

相關:http://stackoverflow.com/a/11372402/165673,http://stackoverflow.com/a/2581423/165673 – Yarin

回答

1

指向目錄名稱的URL(通常期望web服務器處理程序將返回某種'index''),而沒有結尾的斜槓實際上是無效的。大多數Web服務器會自動更正這些請求,並重定向到添加了尾部斜槓的相同URL。

因此,在幕後,您對http://example.com的請求會導致從Web服務器重定向到http://example.com/,這就是爲什麼您會看到驚人的斜線。

簡短的回答是,正確的URI路徑至關重要 - 根目錄與否。對於更深入和更簡單的答案,請看this page

+0

半途同意你說的話。從技術上講,根url必須包含尾部斜線,因爲它指向根,路徑不能爲空。另一方面,它指向一個特定的資源(主頁),而不是一個目錄本身,所以從這個意義上來說,尾部的斜線是不合邏輯的。至於是否對抓取工具很重要,我迄今爲止看到的大多數證據都表明,對於根網站而言,它並不是。 – Yarin