時(shí)間:2015-06-28 00:00:00 來(lái)源:IT貓撲網(wǎng) 作者:網(wǎng)管聯(lián)盟 我要評(píng)論(0)
Nginx ("engine x") 是一個(gè)高性能的 HTTP 和反向代理服務(wù)器,也是一個(gè) IMAP/POP3/SMTP 代理服務(wù)器。 Nginx 是由 Igor Sysoev 為俄羅斯訪(fǎng)問(wèn)量第二的 Rambler.ru 站點(diǎn)開(kāi)發(fā)的,它已經(jīng)在該站點(diǎn)運(yùn)行超過(guò)兩年半了。Igor 將源代碼以類(lèi)BSD許可證的形式發(fā)布。
Nginx 超越 Apache 的高性能和穩(wěn)定性,使得國(guó)內(nèi)使用 Nginx 作為 Web 服務(wù)器的網(wǎng)站也越來(lái)越多,其中包括新浪博客、新浪播客、網(wǎng)易新聞等門(mén)戶(hù)網(wǎng)站頻道,六間房、56.com等視頻分享網(wǎng)站,Discuz!官方論壇、水木社區(qū) 等知名論壇,豆瓣、YUPOO相冊(cè)、海內(nèi)SNS、迅雷在線(xiàn)等新興Web 2.0網(wǎng)站。
現(xiàn)在就就來(lái)學(xué)習(xí)在freebsd7.0中安裝及配置nginx,這里只是把a(bǔ)pache換成nginx,其他php等都不變:
一、安裝nginx 0.6.33
[root@bsd01 ~]#cd /usr/ports [root@bsd01 ports]#make search key=^nginx Port: nginx-0.6.32_1 Path: /usr/ports/www/nginx Info: Robust and small WWW server Port: nginx-devel-0.7.21 Path: /usr/ports/www/nginx-devel Info: Robust and small WWW server |
freebsd上有2個(gè),一個(gè)0.6.33(這里查詢(xún)顯示nginx-0.6.32_1)是穩(wěn)定版,0.7.21是最新的開(kāi)發(fā)版,所以這里安裝0.6.33。
[root@bsd01 ports]#cd www/nginx [root@bsd01 nginx]#make install clean |
接著出來(lái)"make config"的菜單,選擇需要的組件即可:
Options for nginx 0.6.33 ───────────────────────────────────── [ ] DEBUG Enable nginx debugging [ ] GOOGLE_PERFTOOLS Enable google perftools module [X] HTTP_MODULE Enable HTTP module [X] HTTP_ADDITION_MODULE Enable http_addition module [X] HTTP_DAV_MODULE Enable http_webdav module [X] HTTP_FLV_MODULE Enable http_flv module [X] HTTP_PERL_MODULE Enable http_perl module [X] HTTP_REALIP_MODULE Enable http_realip module [X] HTTP_REWRITE_MODULE Enable http_rewrite module [X] HTTP_SSL_MODULE Enable http_ssl module [X] HTTP_STATUS_MODULE Enable http_stub_status module [X] HTTP_SUB_MODULE Enable http_sub module [ ] MAIL_MODULE Enable IMAP4/POP3/SMTP proxy module [ ] MAIL_IMAP_MODULE Enable IMAP4 proxy module [ ] MAIL_POP3_MODULE Enable POP3 proxy module [ ] MAIL_SMTP_MODULE Enable SMTP proxy module [ ] MAIL_SSL_MODULE Enable mail_ssl module [X] WWW Enable html sample files |
tab到OK,開(kāi)始安裝。
安裝完后,配置目錄位于/usr/local/etc/nginx內(nèi),這個(gè)是freebsd的規(guī)則了,閉著眼睛都知道。主配置文件就是nginx.conf。
由于前面已經(jīng)安裝了php這些,這里就不用安裝了,只要把php配置到nginx上就可以了。為了測(cè)試,我也把a(bǔ)pache先停了,以免沖突。
nginx目前還不能直接支持php,必須先借助于fastcgi來(lái)驅(qū)動(dòng)php。現(xiàn)在fastcgi較好的辦法有2種,一個(gè)是spawn-fcgi,另外一個(gè)就是php-fpm,一般來(lái)說(shuō)可能php-fpm更強(qiáng)大一點(diǎn),但是spawn-fcgi也有相當(dāng)數(shù)量的人在使用,所以就看自己習(xí)慣了。所以我2個(gè)都做了一遍。
#p#副標(biāo)題#e#
二、使用spawn-fcgi支持php
▼首先需要安裝lighttpd,以取得spawn-cgi
[root@bsd01 ~]#cd /usr/ports/www/lighttpd [root@bsd01 lighttpd]#make install clean |
▼編輯nginx.con文件:
[root@bsd01 ~]#vi /usr/local/etc/nginx/nginx.conf |
user nobody; user www; location / { root /usr/local/www/nginx; index index.html index.htm; } location / { root /data1/www; index index.html index.htm index.php; } #location ~ \.php$ { # root html; # fastcgi_pass 127.0.0.1:9000; # fastcgi_index index.php; # fastcgi_param SCRIPT_FILENAME /scripts$fastcgi_script_name; # include fastcgi_params; #} location ~ \.php$ { fastcgi_pass 127.0.0.1:9000; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME /data1/www$fastcgi_script_name; include fastcgi_params; } #location ~ /\.ht { # deny all; #} location ~ /\.ht { deny all; } |
▼現(xiàn)在用spawn-fcgi啟動(dòng)php-cgi進(jìn)程:
[root@bsd01 lighttpd]#spawn-fcgi -a 127.0.0.1 -p 9000 -u www -C 3 -f /usr/local/bin/php-cgi Kspawn-fcgi.c.206: child spawned successfully: PID: 25354 |
"-C 3"就是啟動(dòng)3個(gè)php-cgi進(jìn)程吧,但是好像實(shí)際會(huì)多1,2個(gè)。