乾貨!傳說中的反向代理

前言

nginx和apache是互聯網時代最為流行的兩種Web服務器軟件。nginx高併發性能出眾,佔用系統資源少,成為了很多企業web服務器的首選。但是由於nginx對於php等動態頁面的處理十分雞肋,而apache非常善於處理動態頁面,並且apache的穩定性遠遠高於nginx,功能模塊也多於nginx。

為了取長補短,常常會以nginx+apache兩個軟件配合起來處理web服務。nginx作為前端主要用於接收客戶端請求,並且根據自身的負載均衡模塊的設置,向後端apache服務器發起訪問web頁面,以達到最佳的客戶體驗。

本文將詳細說明nginx+apache的配置方法。

服務器拓撲結構

乾貨!傳說中的反向代理

乾貨!傳說中的反向代理

配置方案

ServerA和ServerB的配置相同,提供的同一個WEB站點的訪問。即配置相同,提供的index.html內容也相同。配置如下:

ServerA:

乾貨!傳說中的反向代理

index文件

乾貨!傳說中的反向代理

ServerB:

乾貨!傳說中的反向代理

index文件

乾貨!傳說中的反向代理

Server的nginx配置如下:

乾貨!傳說中的反向代理

如圖所示按照方框中的內容修改nginx的主配置文件(/etc/nginx/nginx.conf)。

upstream節要寫在http節中,表示需要反向代理的主機列表,其中web為代理名,weight為負載均衡權重。

location節要寫在server節中,其中http://後面接的內容需要與upstream節的代理名一致。

配置好三臺服務器之後,通過訪問http://www.jiancenj.com的方式可以直接訪問到ServerA和ServerB上的頁面。

可能遇到的問題

如果遇到三臺主機服務啟動無誤,ServerA和ServerB的web頁面單獨訪問正常,訪問Server上的nginx時出現404報錯,可以嘗試關閉三臺服務器的selinux以解決問題。


分享到:


相關文章: