一筋量、從瀏覽器輸入URL
URL(Uniform Resoure Locator) 統(tǒng)一資源定位器盛险。
舉個栗子:個人身份證澳泵、家里的門牌號性湿。具有唯一性
標準格式:協(xié)議類型://服務器地址(必要時需加上端口號)/路徑/文件名
日常使用:
傳送協(xié)議(http 絕大多網(wǎng)頁不用輸入http 是因為網(wǎng)頁內容是超文本傳輸協(xié)議文件)
服務器。(通常是域名或是ip地址)
端口號襟衰。(以數(shù)字方式表示贴铜,若為HTTP的默認值“:80”可省略)
路徑。(以“/”字符區(qū)別路徑中的每一個目錄名稱)
查詢。(GET模式的窗體參數(shù)绍坝,以“?”字符為起點徘意,每個參數(shù)以“&”隔開,再以“=”分開參數(shù)名稱與數(shù)據(jù)轩褐,通常以UTF8的URL編碼椎咧,避開字符沖突的問題)
二、域名解析
baidu.com 就是一個域名灾挨,但瀏覽器不認識域名邑退,所以需要通過DNS(域名系統(tǒng))將該域名解析成IP地址。當電腦沒找到該IP地址就會往上跳劳澄,查詢上級服務器,還是沒有秒拔,則向根域名服務器查找域名對應 IP砂缩,根域名服務器把請求轉發(fā)到下一級庵芭,直到找到 IP。
為什么要發(fā)明域名好乐,不直接用IP?
簡單易記,更易分清反璃。
三淮蜈、服務器處理
服務器是一臺安裝系統(tǒng)的機器礁芦,常見的系統(tǒng)如Linux肖方、windows server 2012
系統(tǒng)里安裝的處理請求的應用叫 Web server。
Web服務器
Web服務器
常見的 web服務器有 Apache艰垂、Nginx猜憎、IIS、Lighttpd
web服務器接收用戶的Request 交給網(wǎng)站代碼柬讨,或者接受請求反向代理到其他 web服務器踩官。
第四步. 網(wǎng)站處理流程
MVC 模型(model)-視圖(view)-控制器(controller)
瀏覽器向 /users 發(fā)送請求
Rails 的路由把 /users 交給 Users 控制器的 index 動作處理
index 動作要求 User 模型讀取所有用戶(User.all)
User 模型從數(shù)據(jù)庫中讀取所有用戶
User 模型把所有用戶組成的列表返回給控制器
控制器把所有用戶賦值給 @users 變量蛋逾,然后傳入 index 視圖
視圖使用嵌入式 Ruby 把頁面渲染成 HTML
控制器把 HTML 送回瀏覽器
瀏覽器處理
HTML字符串被瀏覽器接受后被一句句讀取解析
解析到link 標簽后重新發(fā)送請求獲取css
解析到 script標簽后發(fā)送請求獲取 js,并執(zhí)行代碼
解析到img 標簽后發(fā)送請求獲取圖片資源
繪制網(wǎng)頁
瀏覽器根據(jù) HTML 和 CSS 計算得到渲染樹,繪制到屏幕上
js 會被執(zhí)行