一前言,準(zhǔn)備工作
當(dāng)前,LAMP開發(fā)模式是WEB開發(fā)的首選,如何搭建一個(gè)高效可靠穩(wěn)定的WEB服務(wù)器一直是個(gè)熱門主題,本文就是這個(gè)主題的一次嘗試
我們采用的架構(gòu)圖如下:
準(zhǔn)備工作:
服務(wù)器: Intel(R) Xeon(TM) CPU 3.00GHz * 2, 2GB mem, SCISC 硬盤
操作系統(tǒng):Linux RedHat AS4,內(nèi)核版本2.6.9-22.ELsmp,gcc版本3.4.4
注:軟件均為源代碼編譯安裝,因此bsd上完全可以參考
軟件:
Apache 2.2.3(能使用MPM模式)
5.2.0(選用該版本是因?yàn)?.2.0的引擎相對(duì)更高效)
eAccelerator 0.9.5(加速PHP引擎,同時(shí)也可以加密PHP源程序)
memcache 1.2.0(用于高速緩存常用數(shù)據(jù))
libevent 1.2a(memcache工作機(jī)制所需)
MySQL 5.0.27(選用二進(jìn)制版本,省去編譯工作)
Nginx 0.5.4(用做器)
squid-2.6.STABLE6(做反向代理的同時(shí)提供專業(yè)緩存功能)
二編譯安裝
一) 安裝Nginx
1.) 安裝
Nginx發(fā)音為[engine x],是由俄羅斯人Igor Sysoev建立的項(xiàng)目,基于BSD許可據(jù)說(shuō)他當(dāng)初是F5的成員之一,英文主頁(yè):俄羅斯的一些大網(wǎng)站已經(jīng)使用它超過兩年多了,一直表現(xiàn)不凡
Nginx的編譯參數(shù)如下:
在這里,需要說(shuō)明一下,由于Nginx的配置文件中我想用到正則,所以需要pcre模塊的支持我已經(jīng)安裝了pcre及pcre-devel的rpm包,但是 Ngxin 并不能正確找到 .h/.so/.a/.la 文件,因此我稍微變通了一下:
[root@localhost]#mkdir /usr/include/pcre/.libs/ [root@localhost]#cp /usr/lib/libpcre.a /usr/include/pcre/.libs/libpcre.a [root@localhost]#cp /usr/lib/libpcre.a /usr/include/pcre/.libs/libpcre.la然后,修改objs/Makefile大概在908行的位置上,注釋掉以下內(nèi)容:
./configure --disable-shared接下來(lái),就可以正常執(zhí)行make及make install了
2.) 修改配置文件/usr/local/server/nginx/conf/nginx.conf
以下是我的nginx.conf內(nèi)容,僅供參考:
運(yùn)行以下命令檢測(cè)配置文件是否無(wú)誤:
如果沒有報(bào)錯(cuò),那么就可以開始運(yùn)行Nginx了,執(zhí)行以下命令即可:備注:conf/htpasswd 文件的內(nèi)容用 apache 提供的 htpasswd 工具來(lái)產(chǎn)生即可,內(nèi)容大致如下:3.) 查看 Nginx 運(yùn)行狀態(tài) 輸入地址 http://192.168.8.1/NginxStatus/,輸入驗(yàn)證帳號(hào)密碼,即可看到類似如下內(nèi)容:Active connections: 328 server accepts handled requests 9309 8982 28890 Reading: 1 Writing: 3 Waiting: 324第一行表示目前活躍的連接數(shù) 第三行的第三個(gè)數(shù)字表示Nginx運(yùn)行到當(dāng)前時(shí)間接受到的總請(qǐng)求數(shù),如果快達(dá)到了上限,就需要加大上限值了 第四行看不懂新聞熱點(diǎn)
疑難解答
圖片精選