Nginx("engine x")是一款輕量級的HTTP和反向代理伺服器。相比於Apache、lighttpd等,它具有占有記憶體少、併發能力強、穩定性高等優勢。它最常見的用途就是提供反向代理服務。 在Linux下我們需要下載Nginx的源代碼包並且手動編譯,而不是用包管理工具,例如Yum、Aptit ...
Nginx("engine x")是一款輕量級的HTTP和反向代理伺服器。相比於Apache、lighttpd等,它具有占有記憶體少、併發能力強、穩定性高等優勢。它最常見的用途就是提供反向代理服務。
在Linux下我們需要下載Nginx的源代碼包並且手動編譯,而不是用包管理工具,例如Yum、Aptitude來安裝。因為我們需要在編譯時對Nginx進行配置,不得不手動編譯,這樣也就會依賴一些工具和庫文件。
首先,需要安裝C語言的編譯環境,因為Nginx是C語言編寫的。通常大多數Linux都會預設安裝GCC,如果沒有的話,可以如下安裝。
安裝make:
yum -y install gcc automake autoconf libtool make
安裝g++:
yum install gcc gcc-c++
PCRE庫:
Nginx需要PCRE(Perl Compatible Regular Expression),因為Nginx的Rewrite模塊和Http核心模塊都會使用到PCRE正則表達式語法。其下載地址為http://www.pcre.org/,我們也可以通過yum來安裝。
yum install pcre pcre-devel
如上是已安裝的提示。
zlib庫:
zlib庫提供了壓縮演算法,Nginx很多地方都會用到gzip演算法。其下載地址為http://www.zlib.net/,也可以通過yum安裝。
yum install zlib zlib-devel
如上是未安裝或者非最新包的情況。
OpenSSL:
Nginx中如果伺服器提供安全頁面,就需要用到OpenSSL庫。其下載地址為http://www.openssl.org/,也可以通過yum安裝。
yum install openssl openssl-devel
下載Nginx:
Nginx源代碼包可以從官方網站下載http://nginx.org/en/download.html,目前最新穩定版本為1.10.1,還有開發版本可供選擇。相關命令如下:
wget https://nginx.org/download/nginx-1.10.1.tar.gz
tar zxf nginx-1.10.1.tar.gz
cd nginx-1.10.1/
安裝Nginx:
在安裝之前需要進行配置,這也是linux下安裝軟體的常見步驟。初次安裝可以直接使用configure腳本,如果有需要可以設置開關選項開啟需要的功能模塊,這裡就不展開了。相關命令如下:
./configure
make
make install
運行Nginx:
Nginx會預設安裝在/usr/local/nginx目錄,我們cd到/usr/local/nginx/sbin/目錄,存在一個Nginx二進位可執行文件。直接運行就可以啟動Nginx。運行成功後打開瀏覽器訪問此機器的IP,出現如下畫面即為成功。
Nginx相關命令:
nginx -h -------------------------> 幫助命令
nginx -s stop -------------------------> 立即停止守護進程(TERM信號)
nginx -s quit -------------------------> 溫和的停止守護進程(QUIT信號)
nginx -s reopen -------------------------> 重新打開日誌文件
nginx -s reload -------------------------> 重新載入配置文件
nginx -t -------------------------> 測試配置文件是否合法
killall nginx -------------------------> 強行終止Nginx進程
由於任何nginx命令都是檢查配置文件是否合法,如果配置文件不合法,命令不會執行,killall命令可以避免無法停止Nginx服務。
Nginx配置文件有自己獨特的語法,在這裡就不展開了。