日夜談——后端語言和web服務器的了解

24
1.簡單描述下web 服務器、PHP、數據庫诀诊、瀏覽器是如何實現動態(tài)網站的?
實現動態(tài)網站過程.png
  1. (客戶輸入URL,DNS解析URL得出IP地址阅嘶,根據IP地址找出對應服務器)
    用戶在客戶端(即是瀏覽器)的地址欄輸入目的資源的URL(統(tǒng)一資源定位符)属瓣,然后客戶機會根據給出URL通過DNS解析器解析成IP地址,然后客戶機根據IP地址尋找對應的服務器讯柔。
  2. (客戶機通過TCP/IP協(xié)議建立到web服務器的TCP鏈接)
  3. (客戶機向web服務器發(fā)送HTTP請求報文抡蛙,請求服務器里資源的資源文檔)
  4. (web服務器接收到客戶機的HTTP請求報文,然后向客戶機發(fā)出HTTP響應報文)

(1). 如果請求的是HTML文檔魂迄,web服務器會將對應目錄下相應的HTML文檔打開粗截,然后將文檔的響應內容發(fā)送給客戶機。
(2).如果請求的是PHP文件极祸,那么web服務器自身是不能處理PHP動態(tài)語言腳本文件的慈格,然后就會尋找并委托php應用服務器,php應用服務器會將web服務器請求的php文件解析成HTML靜態(tài)代碼遥金,然后將HTML靜態(tài)代碼發(fā)送給web服務器,最后web服務器會將HTML靜態(tài)代碼發(fā)送客戶機蒜田。
(3).如果請求的資源是訪問數據庫稿械,則web服務器會通過php應用服務器去訪問數據庫。
詳細:php應用服務器打開php文件冲粤,然后在php通過對數據庫鏈接的代碼來鏈接本機或者其他機器上的數據庫美莫,然后同標準SQL標準語言去處理和訪問數據庫页眯,然后通過php應用服務器將php文件解析成靜態(tài)HTML代碼,最后發(fā)送給客戶機厢呵。

  1. (客戶機解析HTML靜態(tài)文檔)
    客戶機在瀏覽器上解析HTML文檔窝撵,并在屏幕上渲染畫面結果,最終實現頁面在客戶機的呈現襟铭。
  2. (客戶機與服務器斷開鏈接)
    客戶機與web服務器斷開鏈接碌奉,web服務器等待下次請求。
2.常見的 WEB 服務器有哪些寒砖?

<li>Apache服務器
Apache HTTP Server(簡稱Apache)是Apache軟件基金會的一個開放源代碼的網頁服務器軟件赐劣,可以在大多數電腦操作系統(tǒng)中運行,由于其跨平臺和安全性被廣泛使用哩都,是最流行的Web服務器軟件之一魁兼。它快速可靠,并且可以通過簡單API擴充漠嵌,將Python/Perl等解析器編譯到服務器中咐汞。

<li>Nginx服務器
Nginx(發(fā)音同engine x)是一個網頁服務器,它能反向代理HTTP, HTTPS, SMTP, POP3, IMAP的協(xié)議鏈接儒鹿,以及一個負載均衡器和一個HTTP緩存碉考。

特點:
Nginx是一款面向性能設計的HTTP服務器,相較于Apache挺身、lighttpd具有占有內存少侯谁,穩(wěn)定性高等優(yōu)勢。與舊版本(<=2.2)的Apache不同章钾,nginx不采用每客戶機一線程的設計模型墙贱,而是充分使用異步邏輯,削減了上下文調度開銷贱傀,所以并發(fā)服務能力更強惨撇。整體采用模塊化設計,有豐富的模塊庫和第三方模塊庫府寒,配置靈活魁衙。 在Linux操作系統(tǒng)下,nginx使用epoll事件模型株搔,得益于此剖淀,nginx在Linux操作系統(tǒng)下效率相當高。同時Nginx在OpenBSD或FreeBSD操作系統(tǒng)上采用類似于epoll的高效事件模型kqueue纤房。

<li>IIS服務器
IIS是Internet Information Server的縮寫纵隔。它是微軟公司主推的服務器。IIS的特點具有:安全性,強大捌刮,靈活

<li>Lighttpd服務器
Lighttpd是一個德國人領導的開源Web服務器軟件,具有非常低的內存開銷碰煌、cpu占用率低、效能好以及豐富的模塊等特點绅作。Lighttpd是眾多OpenSource輕量級的web server中較為優(yōu)秀的一個芦圾。支持FastCGI,CGI俄认,Auth个少,輸出壓縮(output compress),URL重寫梭依,Alias等重要功能稍算。

<li>Tomcat服務器
Tomcat是Apache軟件基金會的Jakarta項目中的一個核心項目,由Apache役拴、Sun和其他一些公司及個人共同開發(fā)而成糊探。Tomcat技術先進、性能穩(wěn)定河闰,而且免費科平,因而深受Java愛好者的喜愛并得到了部分軟件開發(fā)商的認可,成為目前比較流行的Web應用服務器姜性。

3.打開瀏覽器瞪慧,在地址欄輸入 http://jirengu.com頁面展現了饑人谷官網的信息,整個過程發(fā)生了什么部念?(饑人谷官網后臺語言 php,web服務器 nginx弃酌,數據庫 mysql)

<li>瀏覽器地址欄輸入URL,然后DNS解析器會將URL解析成所訪問的nginx服務器的IP地址儡炼,然后瀏覽器通過IP地址在Internet上找到對應的nginx服務器妓湘。

輸入URL.png
IP地址,80接口.png
  1. 然后客戶端會打包HTTP請求

  2. 客戶機通過TCP/IP協(xié)議建立到服務器的鏈接乌询。

  3. 建立鏈接鏈接之后榜贴,客戶機向nginx服務器發(fā)送HTTP請求報文,請求資源妹田。
    根據chrome瀏覽器控制臺的反饋信息唬党,客戶機想nginx服務器請求的饑人谷網站資源文檔數為32個,其中包括(gif鬼佣,圖片驶拱,文字,HTML文檔沮趣,PHP文件屯烦,CSS文檔,JS文檔等等)

請求資源.png

4 nginx服務器向客戶機發(fā)送HTTP協(xié)議響應報文:
nginx服務器會根據響應報文內不同資源類型會做出不同的處理房铭。

(1)如果是HTML文檔驻龟,nginx服務器會將相應的HTML文檔找到并打開,然后將文件發(fā)送給客戶機缸匪。
(2)如果是PHP文檔翁狐,nginx服務器是無法解析PHP文檔,它會借助PHP應用服務器去將PHP文檔解析成靜態(tài)的HTML代碼凌蔬,然后將HTML代碼發(fā)送給nginx服務器露懒,最后nginx服務器將HTML文檔打開發(fā)送給客戶機。
(3)對于例如注冊或登錄等表單提交操作砂心,涉及前后端的數據交換懈词,則會訪問mysql數據庫,那么nginx服務通過php應用服務器對php文件的處理辩诞,間接操作數據庫坎弯,從而最終生成一個包含數據庫信息的html靜態(tài)代碼(同樣,這里的靜態(tài)代碼是和前面的html文檔有關聯的組成部分而不是兩個頁面)

5.** 客戶機瀏覽器加載解析文檔译暂,然后渲染文檔抠忘。**
由客戶端解釋HTML文檔,在客戶端屏幕上渲染圖形結果外永,最終實現網頁在客戶端的呈現

饑人谷頁面.png

6 客戶機與服務器斷開鏈接崎脉,服務器等待下次請求。

實戰(zhàn)

1.基于xampp搭建Web服務器和完成相關配置

<li>xampp的安裝和環(huán)境搭建

安裝好xampp后伯顶,啟動Web服務器和數據庫服務器囚灼,但是默認端口已被占用,所以修改端口號

Apache.png

<li>通過瀏覽器訪問Web服務器上的php文件

Web服務器的根目錄在htdocs文件夾祭衩,所以根據文件路徑訪問php2.php

Apache服務器使用.png

版權歸饑人谷peter和饑人谷所有灶体,若有轉載,請注明來源

感謝瓜子觀眾:


gaki24
最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
  • 序言:七十年代末汪厨,一起剝皮案震驚了整個濱河市赃春,隨后出現的幾起案子,更是在濱河造成了極大的恐慌劫乱,老刑警劉巖织中,帶你破解...
    沈念sama閱讀 221,635評論 6 515
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現場離奇詭異衷戈,居然都是意外死亡狭吼,警方通過查閱死者的電腦和手機,發(fā)現死者居然都...
    沈念sama閱讀 94,543評論 3 399
  • 文/潘曉璐 我一進店門殖妇,熙熙樓的掌柜王于貴愁眉苦臉地迎上來刁笙,“玉大人,你說我怎么就攤上這事∑N” “怎么了座每?”我有些...
    開封第一講書人閱讀 168,083評論 0 360
  • 文/不壞的土叔 我叫張陵,是天一觀的道長摘悴。 經常有香客問我峭梳,道長,這世上最難降的妖魔是什么蹂喻? 我笑而不...
    開封第一講書人閱讀 59,640評論 1 296
  • 正文 為了忘掉前任葱椭,我火速辦了婚禮,結果婚禮上口四,老公的妹妹穿的比我還像新娘孵运。我一直安慰自己,他們只是感情好蔓彩,可當我...
    茶點故事閱讀 68,640評論 6 397
  • 文/花漫 我一把揭開白布治笨。 她就那樣靜靜地躺著,像睡著了一般粪小。 火紅的嫁衣襯著肌膚如雪大磺。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 52,262評論 1 308
  • 那天探膊,我揣著相機與錄音杠愧,去河邊找鬼。 笑死逞壁,一個胖子當著我的面吹牛流济,可吹牛的內容都是我干的。 我是一名探鬼主播腌闯,決...
    沈念sama閱讀 40,833評論 3 421
  • 文/蒼蘭香墨 我猛地睜開眼绳瘟,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了姿骏?” 一聲冷哼從身側響起糖声,我...
    開封第一講書人閱讀 39,736評論 0 276
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎分瘦,沒想到半個月后蘸泻,有當地人在樹林里發(fā)現了一具尸體,經...
    沈念sama閱讀 46,280評論 1 319
  • 正文 獨居荒郊野嶺守林人離奇死亡嘲玫,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 38,369評論 3 340
  • 正文 我和宋清朗相戀三年悦施,在試婚紗的時候發(fā)現自己被綠了。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片去团。...
    茶點故事閱讀 40,503評論 1 352
  • 序言:一個原本活蹦亂跳的男人離奇死亡抡诞,死狀恐怖穷蛹,靈堂內的尸體忽然破棺而出,到底是詐尸還是另有隱情昼汗,我是刑警寧澤肴熏,帶...
    沈念sama閱讀 36,185評論 5 350
  • 正文 年R本政府宣布,位于F島的核電站乔遮,受9級特大地震影響扮超,放射性物質發(fā)生泄漏取刃。R本人自食惡果不足惜蹋肮,卻給世界環(huán)境...
    茶點故事閱讀 41,870評論 3 333
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望璧疗。 院中可真熱鬧坯辩,春花似錦、人聲如沸崩侠。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,340評論 0 24
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽却音。三九已至改抡,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間系瓢,已是汗流浹背阿纤。 一陣腳步聲響...
    開封第一講書人閱讀 33,460評論 1 272
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留夷陋,地道東北人欠拾。 一個月前我還...
    沈念sama閱讀 48,909評論 3 376
  • 正文 我出身青樓,卻偏偏與公主長得像骗绕,于是被迫代替她去往敵國和親藐窄。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 45,512評論 2 359

推薦閱讀更多精彩內容

  • Spring Cloud為開發(fā)人員提供了快速構建分布式系統(tǒng)中一些常見模式的工具(例如配置管理酬土,服務發(fā)現荆忍,斷路器,智...
    卡卡羅2017閱讀 134,699評論 18 139
  • 第一章 Nginx簡介 Nginx是什么 沒有聽過Nginx撤缴?那么一定聽過它的“同行”Apache吧刹枉!Ngi...
    JokerW閱讀 32,700評論 24 1,002
  • 0 系列目錄# WEB請求處理 WEB請求處理一:瀏覽器請求發(fā)起處理 WEB請求處理二:Nginx請求反向代理 本...
    七寸知架構閱讀 13,970評論 22 190
  • 1.初學者在本地安裝 Apache 與 PHP。安裝 xampp 套件即可腹泌。XAMPP 里面包含 Apache 和...
    泰格_R閱讀 368評論 0 0
  • 上一篇《WEB請求處理一:瀏覽器請求發(fā)起處理》嘶卧,我們講述了瀏覽器端請求發(fā)起過程,通過DNS域名解析服務器IP凉袱,并建...
    七寸知架構閱讀 81,037評論 21 356