導(dǎo)引
2010年2月,科技網(wǎng)絡(luò)雜志Read Write web發(fā)表了一篇題為“Facebook想成為你唯一真正的登錄用戶”的文章。這篇文章是關(guān)于Facebook和美國在線之間的一項新的合作,旨在讓用戶更容易地登錄Facebook。考慮到接下來發(fā)生的事情,這很諷刺。
在文章發(fā)表后不久,這篇文章莫名其妙地在谷歌中以“Facebook登錄”的搜索詞排名第一。所以當成千上萬的人開始登陸這個Read - Write網(wǎng)頁,以為這是Facebook的登錄頁面,他們繼續(xù)登錄!當然,他們無法登錄,因為這不是他們所在的Facebook網(wǎng)站!請閱讀下面的評論,看看當?shù)卿浖毠?jié)不起作用時人們的反應(yīng)!
這種情況有什么問題嗎?是誰的錯,他們搜索了Facebook登錄,然后到達了一個不是Facebook登錄頁面的網(wǎng)站?有些人認為谷歌是罪魁禍首,因為這些人已經(jīng)熟悉了用這種方式登錄Facebook,而且谷歌的結(jié)果改變了,他們不應(yīng)該知道更多嗎?另一些人則認為,責(zé)任在于相關(guān)人員,因為他們從來沒有進行過最基本的安全檢查……呃,來檢查URL。
他們沒有檢查網(wǎng)址?
顯然不是。啊?是網(wǎng)絡(luò)釣魚詐騙?——閑話少敘,進入正題。
認識URL
什么是URL?
URL代表統(tǒng)一資源定位符,或者換句話說,在線資源的網(wǎng)址,即網(wǎng)站或文檔。
Web瀏覽器在地址欄中顯示URL
你訪問的每個網(wǎng)站都有一個URL。以下URL指向本文:https://doepud.co.uk/blog/foreny-of-a-url。
創(chuàng)建URL的方式有兩種
1)在點擊網(wǎng)頁、書簽或電子郵件中的鏈接后,
2)直接在地址欄中輸入URL即可創(chuàng)建URL
協(xié)議連接到域名,域名連接到文件路徑…
以本文的URL為例,您應(yīng)該理解URL的三個基本部分:協(xié)議、域名和路徑。
并且,基于來自馬特卡茨的URL定義的示例URL,這里是一個更復(fù)雜的URL示例:
URL剖析
從上圖可見,URL構(gòu)成分為:協(xié)議、子域名、域名、端口、路徑、查詢、參數(shù)以及片段等內(nèi)容構(gòu)成。
下面分別介紹。
1)協(xié)議:
該協(xié)議聲明了web瀏覽器在發(fā)送或獲取web頁面或文檔時應(yīng)該如何與web服務(wù)器通信。最常見的協(xié)議是http,它代表超文本傳輸協(xié)議。
另一個常見的協(xié)議是https,它代表超文本傳輸協(xié)議安全。你會在安全頁面上看到這個,比如購物網(wǎng)站和登錄頁面。如果你訪問的網(wǎng)站需要輸入敏感信息,比如銀行信息和密碼,確保協(xié)議聲明為https。這意味著你的瀏覽器會對你提供的任何信息進行加密,這樣在傳輸過程中試圖攔截網(wǎng)頁的釣魚者就無法理解。
您不太可能看到的一些協(xié)議包括ftp(文件傳輸協(xié)議)pop(郵局協(xié)議)、smtp(簡單郵件傳輸協(xié)議)和imap (Internet消息訪問協(xié)議)。如果你想知道更多,這里有一個協(xié)議列表。
2)子域名
子域名是主域名的一個子分支。例如,mail.doepud.com和calendar.doepud.com是域名doepud.com的子域名。
3)域名
域名是互聯(lián)網(wǎng)上標識網(wǎng)站的唯一參照,例如doepud.co.uk。域名總是包括頂級域名(top-level domain,TLD),在Doepud的例子中是uk。co部分是商業(yè)和合并的縮寫。.co.uk被稱為二級域名(second-level domain,SLD)。
4)端口
端口號很少在url中見到,但總是必需的。在URL中聲明時,它緊跟在TLD之后,以冒號分隔。如果沒有聲明,并且大多數(shù)情況下協(xié)議是http,則使用端口80。對于https(安全)請求,使用端口443。
5)路徑
路徑通常指的是web服務(wù)器上的文件或目錄,例如/directory/file.php。
有時候文件名不會被指定,例如https://doepud.co.uk/blog/,所以網(wǎng)絡(luò)瀏覽器會自動在/blog/文件夾中查找名為index或default的文件。如果兩者都不能找到,服務(wù)器通常會返回一個404 Not found錯誤。
6)查詢
查詢通常出現(xiàn)在動態(tài)頁面(從數(shù)據(jù)庫或用戶生成內(nèi)容生成的頁面)的URL中,并由一個問號后跟一個或多個參數(shù)表示。查詢直接跟隨域名、路徑或端口號后。
例如,看看這個URL,這是由谷歌產(chǎn)生的,當做搜索單詞URL:
http://www.google.co.uk/search?q=url&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-GB:official&client=firefox-a.
其中查詢部分為:
?q=url&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-GB:official&client=firefox-a.
7)參數(shù)
參數(shù)是在URL的查詢字符串中找到的信息片段。參考上面的谷歌查詢,參數(shù)跟在問號后面,并由&字符分隔,因此可以單獨理解它們,并用于顯示頁面上的內(nèi)容。這些參數(shù)是:
- q=url
- ie=utf-8
- oe=utf-8
- aq=t
- rls=org.mozilla:en-GB:official
- client=firefox-a
8)片段
片段是一個內(nèi)部頁面引用,有時稱為命名錨。它通常出現(xiàn)在URL的末尾,以(#)字符和標識符開頭。它指的是網(wǎng)頁中的一個部分。
更多閱讀
URL(Uniform Resource Locator):http://en.wikipedia.org/wiki/Uniform_Resource_Locator
URL縮短化: http://en.wikipedia.org/wiki/URL_shortening






