(本文內容為作者個人理解,有出現錯誤的地方歡迎指出)
第一步:在瀏覽器輸入URL
URL:統一資源定位符,定位互聯網上面的資源。
主要幾個協議:
http協議:用于定位互聯網資源,缺點是明文傳輸,不加密。
https協議:用于定位互聯網資源并自帶加密。(蘋果公司強制iOS APP使用此協議,不出意外未來會取代http)
file協議:用于定位本地電腦資源
ftp協議:用于下載互聯網資源(目前基本已被P2P取代,現多用于內網下載)
輸入域名之后瀏覽器通過域名解析到IP,從而找到對應的服務器與之交互。
(為什么使用域名而不是直接使用IP?答:更容易記憶,方便宣傳、傳播。)
//開頭等于和當前頁面的協議保持一致。
第二步:域名解析
把域名解析成IP。
1.此瀏覽器緩存
2.本機hosts
3.你的路由器的緩存
4.ISP(服務商)的緩存
以上4個都沒有就會去根服務器查找。
第三步:服務器處理
請求發給服務器,服務器端安裝了Web server,用于接受請求、處理請求。
常見的Web server服務器軟件有Apache、Nginx。
Web server作為入口,與用戶產生交互,收到用戶的請求之后發給網站代碼或者其他的服務器。可以看作用戶和服務器之間的橋梁。
jirengu.png
第四步:網站處理流程
MVC=模型(model)+視圖(view)+控制器(controller)
M層與數據庫進行交互,為C層提供數據。V層提供模版,把M層從數據庫獲取的數據添加到V層里面生成HTML傳給C層。前端工程師主要負責V層。
HTML字符串傳給瀏覽器,瀏覽器進行解析。瀏覽器在解析的過程會讀取一些特殊的標簽(比如圖片img、腳本script)然后去服務器提取內容。最終瀏覽器根據HTML+CSS+javascript生成用戶所看到的頁面。
jirengu2.png