一。Nginx和Apache的優缺點和對比
Nginx 優點 | Apache 優點 | |
---|---|---|
性能與并發 | 采用事件驅動模型,支持 10 萬 + 高并發連接,資源(CPU / 內存)占用極低 | 生態成熟,內置模塊可直接處理動態內容,無需依賴第三方程序 |
配置與部署 | 支持熱部署(無需重啟即可更新配置或升級),長期運行穩定性強 | 支持.htaccess 目錄級配置,無需重啟即時生效,對新手友好 |
功能特性 | 靜態資源處理效率極高,內置強大的反向代理和負載均衡功能 | 模塊豐富(數千個),支持復雜認證、日志分析等場景,兼容性極強 |
適用場景適配 | 高并發場景(電商、視頻網站)、靜態資源為主、反向代理架構 | 動態內容為主(如 WordPress)、配置頻繁變更、傳統企業應用 |
Nginx 缺點 | Apache 缺點 | |
---|---|---|
性能與并發 | 動態內容處理需依賴后端程序(如 PHP-FPM),架構相對復雜 | 多進程 / 線程模型,并發能力弱(通常數千級),資源占用高(內存是 Nginx 的 2-5 倍) |
功能特性 | 邊緣場景解決方案較少,第三方模塊生態不如 Apache 完善 | 靜態資源處理效率低,反向代理 / 負載均衡能力較弱 |
適用場景適配 | 動態內容占比極高、配置頻繁變更的場景不適用 | 高并發、低配服務器或高密度部署場景不適用 |
差異點 | Nginx | Apache |
---|---|---|
核心模型 | 事件驅動(非阻塞 I/O) | 多進程 / 多線程(阻塞 I/O) |
并發能力 | 強(支持 10 萬 + 并發) | 弱(通常支持數千并發) |
動態內容處理 | 依賴反向代理后端程序 | 內置模塊直接處理 |
資源占用 | 極低 | 較高(通常是 Nginx 的 2-5 倍) |
?二.常見的狀態頁
1:請求繼續執行操作的狀態代碼
100(繼續):請求者應當繼續提出請求,服務器收到了一部分內容,等待其余部分
101(切換協議):請求者已要求服務器切換協議,服務器已經確認并且準備切換
2.表示成功處理了請求的狀態頁
200(成功):服務器已成功處理了請求,表示服務器提供了請求的網頁
201(已創建):服務器已接受請求,但尚未處理
202(已接受):服務器已經接受請求,但尚未處理
203(非授權信息):服務器已經成功處理請求,但返回的信息可能來自另一來源
204(無內容):服務器成功處理了請求,但是沒有任何訂單內容
206(部分內容):服務器成功處理了部分GET請求????????
3:表示完成請求,需要進一步操作,通常是用來重定向的
300(多種選擇):正對請求,服務器可以執行多種操作
302(臨時移動):服務器目前從不同的網頁想響應請求,但請求者應繼續使用原來位置進行請求
304(未修改):自上次請求后,請求的網頁未修改過。服務器返回此響應時,不會返回網頁的內容
307(臨時重定向):服務器目前從不同的網頁響應請求,但請求者應該繼續使用原來的位置來進行以后的請求
4:表示請求可能出錯,妨礙了服務器的處理\
400(錯誤請求):服務器不理解請求的語法
401(未授權):請求要求身份驗證,對于需要登陸的網頁,服務器可能返回此響應
403(禁止):服務器拒絕請求
404(未找到):服務器找不到請求的網頁
405(方法禁用):禁用請求中指定的方法
406(不接受):無法使用請求的內容特性響應請求的網頁
407(需要代理授權):與401相似,請求者應當授權使用代理
408(請求超時):服務器等候請求時,發生超時
5:請求時發生內部錯誤,這些錯誤可能是服務器本身的錯誤,而不是請求出錯
500(服務器內部錯誤):服務器遇到了錯誤,無法完成請求
501(尚未實施):服務器不具備完成請求的功能
502(錯誤網關):服務器作為網關或者代理,從上游服務器收到無效響應
503(服務器不可用):服務器目前無法使用(超載或者停機維護),通常是暫時的狀態
504(網關超時):服務器作為網關或者代理,但是沒有及時從上游服務器收到請求
5055(HTTP版本不受支持):服務器不支持請求中所用的HTTP協議版本