本教程版權(quán)歸小圓和饑人谷所有效拭,轉(zhuǎn)載須說明來源
動手
1. 安裝xampp
2. 通過瀏覽器訪問php文件
問題
1. 簡單描述下web 服務(wù)器瓣蛀、PHP、數(shù)據(jù)庫字支、瀏覽器是如何實現(xiàn)動態(tài)網(wǎng)站的?
- 當(dāng)用戶端訪問web時凤藏,DNS域名服務(wù)器解析為對應(yīng)的IP地址;
- 通過HTTP協(xié)議去連接IP地址的服務(wù)器系統(tǒng)堕伪,請求Apache服務(wù)器揖庄;
- 處理html文件時,Apache服務(wù)器在它管理的文檔目錄中找到并打開相應(yīng)的html文件欠雌,響應(yīng)給客戶端瀏覽器蹄梢;由于Apache服務(wù)器本身不能處理php動態(tài)語言腳本文件,所以處理php文件時富俄,Apache服務(wù)器將php文件交給PHP應(yīng)用服務(wù)器翻譯成html靜態(tài)代碼禁炒,再由Apache服務(wù)器將html靜態(tài)代碼輸出到客戶端瀏覽器而咆;處理數(shù)據(jù)庫時,Apache服務(wù)器使用PHP應(yīng)用服務(wù)器打開php文件齐苛,通過對數(shù)據(jù)庫連接的代碼來連接本機或者網(wǎng)絡(luò)上其他機器上的MySQL數(shù)據(jù)庫翘盖,并在php程序中獲取數(shù)據(jù)庫中的數(shù)據(jù),再通過PHP應(yīng)用服務(wù)器將數(shù)據(jù)生成html靜態(tài)代碼輸出到客戶端瀏覽器凹蜂。
- 瀏覽器接收并下載服務(wù)器端的html靜態(tài)代碼馍驯,解讀代碼并將網(wǎng)頁呈現(xiàn)出來。
2. 常見的 WEB 服務(wù)器有哪些玛痊?
windows下的IIS汰瘫,linux下的Apache,還有nginx擂煞,Lighttpd混弥,Zeus等等。
3. 打開瀏覽器对省,在地址欄輸入 http://jirengu.com 頁面展現(xiàn)了饑人谷官網(wǎng)的信息蝗拿,整個過程發(fā)生了什么?(饑人谷官網(wǎng)后臺語言 php,web服務(wù)器 nginx蒿涎,數(shù)據(jù)庫 mysql)
當(dāng)我們輸入http://jirengu.com,瀏覽器會解析這個url分成三部分哀托,域名:jirengu.com,端口:默認(rèn)為80劳秋,請求資源:默認(rèn)為index.html和index.php仓手。
- 用戶在瀏覽器中輸入http://jirengu.com;
- 瀏覽器通過DNS服務(wù)器查找域名對應(yīng)的IP地址;
- 瀏覽器通過TCP/IP協(xié)議與對應(yīng)IP地址的nginx服務(wù)器建立連接,通過HTTP協(xié)議向nginx服務(wù)器請求相應(yīng)資源;
- nginx服務(wù)器收到請求后,在相應(yīng)目錄下尋找對應(yīng)的php文件,并將對應(yīng)php文件交由php應(yīng)用服務(wù)器處理;
- php應(yīng)用服務(wù)器接收php文件并打開,根據(jù)php文件內(nèi)對數(shù)據(jù)庫連接的代碼來連接mysql數(shù)據(jù)庫,并根據(jù)php文件中的mysql數(shù)據(jù)庫操作代碼從mysql數(shù)據(jù)庫中獲取數(shù)據(jù),再將數(shù)據(jù)生成html靜態(tài)代碼并交還給nginx服務(wù)器;
- nginx服務(wù)器將接受到的html靜態(tài)代碼相應(yīng)給客戶端瀏覽器;
- 瀏覽器收到nginx服務(wù)器的響應(yīng)后,接收并下載服務(wù)器端的html靜態(tài)代碼,然后對html靜態(tài)代碼進行解析,最后將頁面渲染出來。