1.Web服務器
“Web服務器”可以指硬件或軟件,或者兩者一起工作。
- 在硬件方面,Web服務器是一種存儲網站組件文件(例如HTML文檔,圖像,CSS樣式表和JavaScript文件)並將其傳遞給最終用户設備的計算機。它連接到互聯網,可以通過域名訪問。
- 在軟件方面,Web服務器包括幾個部分,用於控制Web用户如何訪問託管文件,至少先要有HTTP服務器。HTTP服務器是一個能夠解析URL和HTTP的軟件。
在最基本的層面上,每當瀏覽器需要在Web服務器上託管的文件時,瀏覽器將通過HTTP協議請求文件。當請求到達正確的Web服務器(硬件)時,HTTP服務器(軟件)通過HTTP發送請求的文檔。
2.靜態網站(服務器)與動態網站(服務器)的區別
靜態web服務器:由計算機(硬件)與HTTP服務器(軟件)組成,服務器將“託管”文件“按原樣”發送到您的瀏覽器。
動態Web服務器:由一個靜態Web服務器加上額外的軟件,最常用的的應用服務器和數據庫。我們將其稱為“動態”,因為應用程序服務器通過HTTP服務器將其發送到瀏覽器之前更新託管文件。
3.客户端(前端)與服務器端(後端)編程的區別
- 他們有不同的目的和關切。
- 他們通常不使用相同的編程語言(JavaScript是例外,可以在服務器端和客户端使用)。
- 它們在不同的操作系統環境中運行。
在瀏覽器中運行的代碼稱為客户端代碼,主要涉及改進呈現的網頁的外觀和行為。這包括選擇和設計UI組件,創建佈局,導航,表單驗證等。相比之下,服務器端網站編程涉及主要根據請求選擇 哪些內容報道查看給瀏覽器。服務器端代碼處理像驗證提交的數據和請求,使用數據庫來存儲和檢索數據以及根據需要將正確的數據發送到客户端的任務。
客户端代碼使用HTML,CSS和JavaScript編寫– 它在Web瀏覽器中運行,對底層操作系統(包括對文件系統的訪問有限)幾乎沒有訪問權限。
服務器端代碼可以用任何編程語言編寫 – 包括PHP,Python,Ruby和C#。服務器端代碼可以完全訪問服務器操作系統。
開發人員通常使用的Web框架關係編寫代碼。網頁框架是功能,對象,規則和其他代碼結構的集合,旨在解決常見問題,加快開發速度,並簡化特定域中面臨的不同類型的任務。
同樣,雖然客户端服務器端代碼都使用框架,但是這些域是非常不同的,因此框架也是如此。客户端Web框架簡化了佈局和表示任務,而服務器端Web框架提供了許多“通用”Web服務器功能,否則您可能必須自己實現(例如,支持會話,支持用户和身份驗證,輕鬆訪問數據庫,模板庫等)。
4.服務器端的用途
- 高效地儲存和傳遞信息
服務器端編程允許我們將信息存儲在數據庫中,並動態構建和返回HTML和其他類型的文件(例如PDF,圖像等)。還可以通過適當的客户端Web框架簡單地返回數據(JSON,XML等)進行呈現(這減少了服務器上的處理負擔以及需要發送的數據量)。
- 定製用户體驗
服務器可以存儲和使用有關客户端的信息,以提供方便和定製的用户體驗。
- 受控訪問內容
服務器端編程允許站點限制對授權用户的訪問,並僅提供允許用户查看的信息。
- 儲存會話/狀態信息
服務器端編程允許開發人員使用會話機制,允許服務器將信息存儲在站點的當前用户上,並根據該信息發送不同的響應。(cookies)
- 通知和溝通
服務器可以通過網站本身或通過電子郵件,短信,即時消息,視頻對話或其他通信服務發送一般或特定於用户的通知。
- 數據分析
網站可能會收集大量關於用户的數據:他們搜索什麼,他們購買什麼,他們推薦什麼,他們留在每一頁上多久。可以使用服務器端編程來根據對該數據的分析來改進響應。
詳情參見:https://developer.mozilla.org...