DIV CSS 佈局教程網

 DIV+CSS佈局教程網 >> 網頁腳本 >> HTML基礎知識 >> HTML和Xhtml >> 不可不知的URL知識
不可不知的URL知識
編輯:HTML和Xhtml     

URL設計是Web設計中常被忽視的東西,事實上URL非常重要,這不僅是一個網頁唯一的路徑,還涉及到你的站點是否干淨,友好。本文講述URL這個司空見慣的Web元素中包含的大量不應為忽視的知識,准則與最佳實踐。需要注意的是W3C建議使用URI取代URL一說。

關於URL的一些准則

首先是與URL有關的一些准則。

一個URL必須唯一地,永久地代表一個在線對象

URL的最基本的使命是唯一地代表Internet上的一個對象,URL必須和Internet上的對象一對一匹配。然而現實中,這很難實現,我們經常可以通過多個URL到達同一個頁面,比如,http://mysite.com/product/tv和http://mysite.com/product?name=tv,這種情形在現代CMS中更是比比皆是,針對這個問題,SEO moz有一篇很好的文章,講到了如何使用Canonical URL機制解決站點中的重復URL問題。

URL應該是永久的,這就要求你在站點上線前就非常嚴謹地規劃URL。如果有一天,你不得不更改URL,一定使用HTTP301機制,告訴浏覽器和搜索引擎,你的那個URL所代表的對象,已經搬遷到新地址,這個機制可以保證你舊地址所獲得PR不會被清零。

盡可能用戶友好

這是URL設計的根本,你的URL應該為最終用戶而設計。保持URL友好的一個好辦法是在保證可讀性的同時讓它盡可能短。比如/about就好過/about-acme-corp-page,當然,保持簡短不能犧牲可讀性,/13d2一類的地址短則短矣,但並不友好。如果要在Twitter,Facebook一類的社會媒體網絡分享你的URL,可以使用Bit.ly一類的網址縮短工具,但這種工具產生的縮短URL並不友好,在Wordpress一類的CMS中,可以使用PrettyLink Pro或Short URL plugin一類的可控制的地址縮短插件。

 

URL的設計切忌使用一些對用戶來說沒有意義的內容,比如數據庫的ID號,/products/23這樣的URL地址對用戶是極不友好的,應當使用/products/ballpoint-pen一類的地址。

保持一致性

站點內的所有URL必須保持一致的格式和結構,這樣可以為用戶帶來信任感,如果你必須更改URL格式和結構,需要使用HTTP 301機制。

可預測的URL

這也是URL一致性的一個表現,如果你的URL擁有很好的一致性,用戶可以根據URL猜測別的內容的URL,假如/events/2010/01指向2010年1月份的日程內容,那

/events/2009/01應當指向2009年1月的日程。

/events/2010應當指向2010年全年的日程。

/events/2010/01/21應當指向2010年1月21日的日程。

URL中的關鍵詞

URL中應該包含本頁重點內容的關鍵詞,比如/posts/2010/07/02/trip-best-buy-memory-cards一類的URL本身就是對頁面內容的反應。在URL包含重點內容關鍵詞,也可以提高SEO性能。SEO的一個很重要的原則就是,在URL地址中包含內容關鍵詞。

關於URL的技術細節

下面說的是有關URL的一些技術細節。

URL不應包含.html,aspx,cfm一類的後綴

這類信息對最終用戶是沒有意義的,卻占了額外的空間,一個例外是.atom,.rss,.json一類的特殊地址,這類地址是有特別的意義的。譯者注:在某些虛擬主機式Web服務器,這種做法未必現實。

URL不應包含WWW部分

WWW部分並不包含任何意義,是一個額外的負擔,不友好。可以使用HTTP 301機制,將www.domain.com定向到domain.com。

URL的格式

URL的格式如下:

domain.com/[keyinformation]/[name]/?[modifiers]

Key information部分一般代表信息的類型或類別。Modifiers部分則屬於查詢字符串范疇,它不應當代表數據結構,應當代表數據的修飾。Key information部分應當盡可能簡短,同時應當表現出一種層級關系,比如http://domain.com/posts/servers/nginx-ubuntu-10.04,或http://domain.com/news/tech/2007/11/05/google-announces-android。

Google News對新聞源有一個有趣的要求,Google要求新聞源頁面的URL中必須包含至少3位唯一的數字,因為他們會忽略年份數字,因此,應該使用一個5位或5位以上的數字。另外,也應該提供Google News站點地圖。如果你想向Google提供新聞,必須按這樣的結構提供URL,當然保持一致性,可以預測性也是必需的。

使用小寫字符

URL中所有字符都應使用小寫,這更容易閱讀。

URL中包含的行為元素

URL查詢字符串中可能包含一些表示行為的元素,比如show,delete,edit等。非破壞性的行為可以體現在URL中,破壞性的行為應該使用POST。

使用URL友好字符

在URL中體現網頁標題的時候,往往會用到一些特殊字符,應當把它們轉換為URL友好字符:

全部大寫字符換成小寫

諸如é一類的字符應轉換成對應的e

空格使用短劃線代替

諸如!,@,#,$,%,^,&,*一類的字符應該使用短劃線代替

雙短劃線應該使用單短劃線代替

另外,沒有必要的話,避免使用%20一類的URL逃逸符。

更多觀點

Chris Shiflett建議,可以使用一些類似句子的URL,如:

 

chriscoyier.net/authored/digging-into-wordpress/
chriscoyier.net/has-worked-for/chatman-design/
chriscoyier.net/likes/trailer-park-boys
jacobwg.com/thinks/this-post/is/basically-done

 

譯者補充:URL的長度上限

URL的最大長度是多少?W3C的HTTP協議並沒有限定,然而,在實際應用中,經過試驗,不同浏覽器和Web服務器有不同的約定:

IE的URL長度上限是2083字節,其中純路徑部分不能超過2048字節。

Firefox浏覽器的地址欄中超過65536字符後就不再顯示。

Safari浏覽器一致測試到80000字符還工作得好好的。

Opera浏覽器測試到190000字符的時候,還正常工作。

Web服務器:

Apache Web服務器在接收到大約4000字符長的URL時候產生413 Entity Too Large"錯誤。

IIS默認接收的最大URL是16384字符。

XML學習教程| jQuery入門知識| AJAX入門| Dreamweaver教程| Fireworks入門知識| SEO技巧| SEO優化集錦|
Copyright © DIV+CSS佈局教程網 All Rights Reserved