中間件、服務器和Web服務器三者的區別


相信很多的Web安全初學者和我一樣,對中間件和服務器的認識不夠深刻,對兩者的概念可能會有所混淆。
正好今天在學習的時候突然想到了這個問題,粗略百度了一下,似乎網上對這個問題的解釋不多,那么就由我來為大家解釋一下中間件和服務器的關系。

 

一、服務器的定義:

服務器指的是一個管理資源並為用戶提供服務的計算機軟件通常分為文件服務器、數據庫服務器和應用程序服務器。運行以上軟件的計算機或計算機系統也被稱為服務器。

 

二、中間件

中間件是服務器上負責解析http請求的一組應用程序,負責接收並解析http請求數據包,在服務器上找到數據包所請求的文件后,將其返回給客戶端,如果http數據包所請求的是一個動態腳本文件,如php等,中間件就要靠CGI與腳本語言解析軟件進行交互,處理好動態腳本文件后,再將處理后的文件其返回給瀏覽器。

 

說白了,中間件就是服務器上web端口(通常為80端口)的一個翻譯官,負責告訴服務器用戶要請求哪些文件,如果用戶請求的是一個靜態的html頁面,就直接在服務器上找到對應文件並將其交給用戶瀏覽器,如果用戶請求的是一個動態頁面如php,asp等,中間件在找到該文件后,將其交給對應的腳本語言解析程序,腳本語言解析程序將文件解析成html后,再把解析過的文件發送給瀏覽器。

 

所以,瀏覽器本身並不能渲染解析動態腳本文件,以php為例,瀏覽器解析的.php文件,實際上是經服務器php程序解析后的html文件

再者,如果服務器上沒有安裝中間件,那么服務器就不能理解用戶發來的http數據包是什么意思,當然也就無法對http請求包進行正確的響應。

 

三、Web服務器

web服務器就是安裝了中間件的服務器

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2026 CODEPRJ.COM