網際網路(Internet)是如何運作的? | Django Girls' Tutorial 中文 ...

文章推薦指數: 80 %
投票人數:10人

網際網路(Internet)是如何運作的. 本章節是受Jessica McKellar (http://web.mit.edu/jesstess/www/) 的一場小講題"How the Internet works" 所啓發. Returntobook Reviewthisbook Abouttheauthor 介紹 1. 網際網路(Internet)是如何運作的? 2. 命令行(command-line)簡介 3. 安裝Python 4. 初試Python 5. 什麼是Django? 6. 安裝Django 7. 程式碼編輯器 8. 開始一個Django專案 9. Djangomodels 10. DjangoORM(Querysets) 11. Djangoadmin 12. Deploy! 13. Djangourls 14. Djangoviews-timetocreate! 15. IntroductiontoHTML 16. Dynamicdataintemplates 17. Djangotemplates 18. CSS-makeitpretty 19. Templateextending 20. Extendyourapplication 21. DjangoForms 22. Domain 23. What'snext? PoweredbyGitBook A A Serif Sans White Sepia Night Twitter Google Facebook Weibo Instapaper DjangoGirls'Tutorial中文版教材 網際網路(Internet)是如何運作的 本章節是受JessicaMcKellar(http://web.mit.edu/jesstess/www/)的一場小講題"HowtheInternetworks"所啓發 我們敢打賭你應該每天都有使用網際網路。

但是你真的知道,當你輸入一個網址時,像是http://djangogirls.org到你的瀏覽器並按下「Enter」的時候發生了哪些事情嗎? 你需要明白的第一件事就是,其實一個網站就是一堆存在硬碟的檔案啦。

就像是你電腦裡的眾多影片、音樂和照片。

即便如此,網站的組成中還是有一部分是獨一無二的:他們都含有一種叫做「HTML」的程式碼。

如果你還不熟悉編程,你一開始可能會有點難理解什麼叫做HTML,但是你的網站瀏覽器(像是Chrome,Safari,Firefox等等)超愛它。

網站瀏覽器就是設計出來讀懂HTML的,遵循它的架構及切切實實地展示你希望瀏覽器展示的所有檔案。

我們需要將HTML檔案們,及其所包含的所有檔案存在硬碟的某處。

為了放上網際網路,我們使用了特別且強悍的電腦--稱為伺服器(server)。

這些伺服器不需要螢幕、滑鼠甚至是鍵盤,因為這些電腦的主要目的就是儲存這些資料並且提供所有人使用(serveit)。

這是為什麼它們被稱為伺服器(server)--因為他們提供(serve)你的資料。

好了,但你還是想要知道網際網路到底是啥,對嗎? 我們為你畫了張示意圖,它看起來像是這樣: 看起來真是一團亂啊XD 事實上它就是聯繫機器(上面提到的伺服器)間的網絡。

成千上萬台的機器啊!無法想像幾公里長的電纜存在在這個世界上!你可以訪問一個叫做Submarine纜線地圖(http://submarinecablemap.com/)的網站,去看看這個連結有多複雜。

這是網站中的一個截圖: 這真是無法想像,對吧?但是很明顯地,要在任意兩台機器間都有電纜連結這件事本身是不可能的。

所以呢,為了可以連結到某台機器(例如說儲存了本站檔案的http://djangogirls.org)我們需要傳遞我們的要求(Request),經由很多很多台不同的機器。

這件事看起來就像是這樣: 想像一下當你輸入http://djangogirls.org,你等同於像是寄了一封信裡面寫著:「親愛的DjangoGirls,我想要看看djangogirls.org這個網站,請把裡面的資訊寄給我,謝謝!」 你的信會先送到最近的郵局。

然後再送到下一個離你的收件地址更近一點的,然後再下一個,直到這封信被傳遞到目的地為止。

唯一一件比較特別的事是如果你送了頻繁的信(封包)到同一個地址,每一封信都會經由完全不同的郵局路徑(路由),這是依據他們如何被分散到各個郵局。

沒錯以上就是個小範例。

你送出訊息並且期望會收到某個回應,當然,除了紙筆你也可以使用資料位元,這是同樣的概念! 除了有國家、郵遞區號、城市與街道名稱所組成的地址,我們也使用IP作為地址。

你的電腦會先要求網域系統(DNS-DomainNameSystem)將djangogirls.org這個網域轉換為IP。

這個運作方式就有點像是古早以前的黃頁電話簿,你可以先找某個人的名字然後用他的電話號碼和地址與他聯繫。

當你要寄一封信,就需要一些功能讓它可以被正確的遞送:一個地址,郵戳等等。

你也需要使用收件者可以理解的語言,對吧?這與你依順序送出的封包要求觀看一個網站其實是同一件事:你使用一個被稱為HTTP(超文本轉換)的協定(protocol) 所以呢,基本上,當你有了一個網站程式你也需要有一個伺服器(server)(機器)讓你的網站活起來。

這個伺服器一直在等待來自各方的要求(request)(這個詞意思是要求伺服器傳回你的網站資料),然後伺服器會就回應你你要求的網站(response)。

從這個Djangotutorial教材中你可以了解Django實際上做了什麼,當你需要回傳一個回應,你並不想總是對不同的人回傳同一個回應,你的信是更加個人化的、更加特別針對某個人只為你量身打造的,豈不是更好嗎?Django便會幫助你去創造這些更私人,更有趣的回信:) 說夠了,動手做吧!



請為這篇文章評分?