先容
簡而言之,Nginx(發音為“engine x”)是一個小型、成果強大而且可擴展的 web/proxy 處事器。按照Netcraft最近的一次觀測,Nginx已經支持了全球高出15%的網站,共111,680,078家 ,個中不乏Netflix和WordPress.com這樣的龐然大物。
Nginx基于Simplified BSD許可(一個開源許可)刊行,可以從在線客棧可能源代碼舉辦安裝。在本文中,我們將會涵蓋如安在Debian,Ubuntu以及CentOS下安裝Nginx。需要出格留意的一點是,在線客棧中的版本凡是城市滯后一點。假如我們想體驗最新的成果和bug批改,那么我推薦按照源代碼來構建,可能直接從nginx.org下載安裝包。
利用在線客棧在Debian Wheezy 7.2 上安裝Nginx
通過利用Debian GNU/Linux包攬理器的高級界面東西——aptitude,我們可以查察Nginx相關的包列表(如圖1所示)。可是,我發起你先運行呼吁aptitude update,以便可以看到可用包的最新列表。
圖1
(順便提一下,第一列中的”p“暗示當前操縱系統上沒有安裝此包)
假如我們不知道要安裝哪個包,可以在呼吁aptitude search后跟上一個包名,譬喻aptitude search nginx,這樣可以輔佐我們舉辦選擇。按照列出的各個包的說明,我們將選擇安裝nginx-full(如圖2所示)。需要重點留意的是,每個包的描寫中都列出了在利用客棧舉辦安裝時,默認會安裝的其他模塊,我們將在本文稍后部門再對其舉辦先容。
圖2 利用在線客棧在Debian Wheezy 7.2上安裝nginx-full
此刻,我們已經安裝了Nginx,但還沒有啟動它。隨后我們運行service nginx start啟動Nginx,即可在欣賞器中打開其啟動頁面(如圖3所示)。
圖3 Nginx啟動頁面
接下來這條呼吁會顯示我們剛安裝的Nginx的版本(如圖4所示)
圖4 從客棧中安裝的Nginx v1.2.1版本
可是,如今Nginx的最新版本已經是1.5.6(譯者注:此刻已經是1.9.11),而版本1.2.1已經與2012年6月5日逾期了。顯然,假如我們但愿利用最新的Nginx版本,就需要從源代碼舉辦安裝。
利用源代碼在Debian Wheezy 7.2上安裝Nginx
請留意,以下指令代表了在Linux下從新開始構建一個包的默認步調,而我們都知道,利用./configure,make和make install的通例安裝步調,會使得卸載包變得堅苦,因為系統沒有步伐去跟蹤哪些文件在安裝進程中被添加或修改。
總而言之,你應該有一個有說服力的原因(一個真正強有說服力的原因!),才可以選擇上面提到的這種方法來編譯一個包。固然你也許有一些這類的原因,可是最常見的一個原因是要在系統中安裝某個包的更新版本,可能為了添加某個特定的成果。
假如你構建并安裝了一個.deb可能一個.rpm文件,那么相應的包攬理器(aptitude/apt-get可能yum)就可以或許感知到包的存在,而且它可以確保你沒有包圍之前安裝的包的文件。另一方面,make install呼吁會包圍安裝進程中碰著的所有文件。我們稍后會接頭,當我們必需要從源代碼編譯并安裝一個包時,可選的其他方法。
既然我們已經抉擇利用Nginx的最新版本,那么久需要憑據如下步調,從http://nginx.org/download/下載已經壓縮好的tar文件,而且在構建之前舉辦解壓縮。
下載tar包:wget http://nginx.org/download/nginx-1.5.6.tar.gz
解壓縮:tar xvzf nginx-1.5.6.tar.gz
進入上一步自動建設的目次: cd nginx-1.5.6
然后
cd nginx-1.5.6 (假如你但愿列出所有的設置選項,可以利用--help選項)。./configure呼吁的輸出會顯示出Nginx的安裝目次(如圖5所示的 /usr/local/nginx)
圖5 Nginx安裝路徑
make
make install
固然安裝完成了,可是Nginx地址目次還沒有被添加到PATH情況變量中(如圖6所示)
圖6 PATH變量(之前)
此刻我們將/usr/local/nginx/sbin目次添加到PATH變量中,并查抄我們方才從源代碼安裝的Nginx版本(如圖7所示)。
圖7 PATH變量(之后),而且從源代碼安裝了Nginx v1.5.6版本
留意:在安裝進程中,大概系統會提示缺少庫文件(如圖8所示)。這時我們可以選擇安裝提供該庫文件(譬喻我們碰著的libpcre3-dev和zlib1g-dev文件)的包,可能在設置是忽略這些提示。
圖8 缺少庫文件
在Ubuntu 12.04 LTS上安裝Nginx