Nginx的安裝與配置詳解

(1)nginx簡介

    nginx概念:

Nginx是一款輕量級Web 伺服器/反向代理伺服器及電子郵件(IMAP/POP3)代理伺服器,並在一個BSD-like 協議下發行。其特點是佔有記憶體少,併發能力強,事實上nginx的併發能力確實在同類型的網頁伺服器中表現較好。

    nginx組成:核心 + 模組
     核心非常小,功能也簡單,通過查詢配置檔案將客戶端請求對映到location,根據URL匹配。
     每個location中會有不同的模組去處理請求。

    nginx優點:
    1、高併發,響應效能好
    2、反向代理效能非常強 ,負載均衡
    3、記憶體和cpu佔用率低
    4、配置程式碼簡單
    5、對後端服務具有檢查功能
    6、支援PHPcgi和fastcgi方式

nginx模組劃分:
    核心模組:HTTP模組、EVENT模組、mailmok
    基礎模組:HTPP access模組、 HTTP Rewirte模組
    第三方模組:HTTP Upstream RequestHash模組

   nginx模型:

epoll模型:非同步非阻塞模型,控制代碼事件的選擇不需要遍歷,是事件響應的。效率高--nginx使用 
    select模型 : 遍歷所有的控制代碼,效率低 --apache使用

(2)nginx下載與安裝(nginx預設的安裝目錄為 /usr/local/nginx)

下載nginx(在linux上使用wget命令下載nginx原始碼包)

wget http://nginx.org/download/nginx-1.6.2.tar.gz

解壓nginx原始碼包
tar xzf nginx-1.6.2.tar.gz

進入解壓後的目錄
cd nginx-1.6.2

預編譯:(一定要先使用上面那條命令進入nginx目錄)
./configure --user=www --group=www --prefix=/usr/local/nginx --with-http_stub_status_module  --with-http_ssl_module

--user=www  #指定使用者為 www
--group=www #指定使用者組為www
--prefix=/usr/local/nginx #指定nginx的安裝目錄

安裝nginx
make

#安裝完畢
make install

檢查是否正確安裝: #安裝正確會返回ok

/usr/local/nginx/sbin/nginx  -t

/usr/local/nginx/sbin/nginx  #這是nginx的安裝目錄下的 sbin/nginx ,前面提到過nginx的安裝目錄為 /usr/local/nginx
-t #檢測是否安裝的命令引數

#安裝正確後,啟動nginx (由於是原始碼安裝的,所以要寫全路徑名啟動)

/usr/local/nginx/sbin/nginx

如果安裝出錯,沒有使用者時:
#新增使用者  www
useradd www

再次啟動nginx

/usr/local/nginx/sbin/nginx

如果出現如下提示:(表示服務已經啟動,可以kill nginx的程序也可以選擇重啟)

root@izwz9724j2r1froag2ir5bz ~]# /usr/local/nginx/sbin/nginx
nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already in use)

kill nginx程序的命令:

kilall -9 nginx  #先kill
/usr/local/nginx/sbin/nginx #再啟動

重啟nginx命令:

/usr/local/nginx/sbin/nginx -s reload

啟動成功後,可以在瀏覽器訪問 --   格式 :http://ip:port

例如:  http://119.23.24.87:80

如果訪問沒有結果,啟動沒有報錯,可以檢視防火牆狀態,關閉防火牆!
linux檢視防火牆狀態:
service  ipdtables status

linux關閉防火牆:
service  ipdtables stop

linux開啟防火牆:
service  ipdtables start

訪問結果: