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