nginx和apache是互聯(lián)網(wǎng)時代最為流行的兩種Web服務(wù)器軟件。nginx高并發(fā)性能出眾,占用系統(tǒng)資源少,成為了很多企業(yè)web服務(wù)器的首選。但是由于nginx對于處理php等動態(tài)頁面的處理十分雞肋,而apache非常善于處理動態(tài)頁,并且apache的穩(wěn)定性遠遠高于nginx,功能模塊也多于nginx。
為了取長補短,常常會以nginx+apache兩個軟件配合起來處理web服務(wù)器。nginx作為前端主要用于接收客戶端請求,并且根據(jù)自身的負載均衡模塊的設(shè)置,向后端apache服務(wù)器發(fā)起訪問web頁面,以達到最佳的客戶體驗。
本文將詳細說明nginx+apache的配置方法。
ServerA和ServerB的配置相同,提供的同一個WEB站點的訪問。即配置相同,提供的index.html內(nèi)容也相同。配置如下:
ServerA:
index文件
ServerB:
index文件
Server的nginx配置如下:
如圖所示按照方框中的內(nèi)容修改nginx的主配置文件(/etc/nginx/nginx.conf)。
upstream節(jié)要寫在http節(jié)中,表示需要反向代理的主機列表,其中web為代理名,weight為負載均衡權(quán)重。
location節(jié)要寫在server節(jié)中,其中http://后面接的內(nèi)容需要與upstream節(jié)的代理名一致。
配置好三臺服務(wù)器之后,通過訪問http://www.xxx.com的方式可以直接訪問到ServerA和ServerB上的頁面。
可能遇到的問題:如果遇到三臺主機服務(wù)啟動無誤,ServerA和ServerB的web頁面單獨訪問正常,訪問Server上的nginx時出現(xiàn)404報錯,可以嘗試關(guān)閉三臺服務(wù)器的selinux以解決問題。
聯(lián)系客服