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
訪問結果: