由于需要,這段時間學一點“nginx”。關于nginx就不介紹了,http://wiki.nginx.org/Main有非常詳細的介紹、安裝等。
安裝軟件我習慣到官網下載源碼,http://nginx.org/,可以看見nginx跟新還是非常頻繁的,今天是2015-7-26 ,最近的一版已經是07-14了,主要有stable和mainline兩種版本。
我選擇的1.8.0的stable版本。軟件非常小800K多一點。直接在網頁上下載到主機。你也可以wget下載,地址:http://nginx.org/download/nginx-1.8.0.tar.gz
tar -xfnginx-1.8.0.tar.gz
使用tar解壓,解壓好以后,進入目錄可按照裝官網的說明(http://wiki.nginx.org/Install)進行安裝如圖:
文字版本操作步驟我也手動貼出來了,如果你懶得動手就直接ctrl+C吧:
./configure
make
sudo make install
其中./configure時是可以進行一些配置的,具體可以參考(如果你看英文手冊沒有什么壓力的話可以直接 configure --help獲取幫助):
--PRefix=PATH
: 指定nginx的安裝目錄。默認/usr/local/nginx
--conf-path=PATH
: 設置nginx.conf配置文件的路徑。nginx允許使用不同的配置文件啟動,通過命令行中的-c選項。默認為prefix/conf/nginx.conf
--user=name
: 設置nginx工作進程的用戶。安裝完成后,可以隨時在nginx.conf配置文件更改user指令。默認的用戶名是nobody。--group=name
類似
--with-pcre
: 設置PCRE庫的源碼路徑,如果已通過yum方式安裝,使用--with-pcre
自動找到庫文件。使用--with-pcre=PATH
時,需要從PCRE網站下載pcre庫的源碼(版本4.4 – 8.30)并解壓,剩下的就交給Nginx的./configure
和make
來完成。perl正則表達式使用在location
指令和ngx_http_rewrite_module
模塊中。
--with-zlib=PATH
: 指定 zlib(版本1.1.3 – 1.2.5)的源碼解壓目錄。在默認就啟用的網絡傳輸壓縮模塊ngx_http_gzip_module
時需要使用zlib 。
--with-http_ssl_module
: 使用https協議模塊。默認情況下,該模塊沒有被構建。前提是openssl與openssl-devel已安裝
--with-http_stub_status_module
: 用來監控 Nginx 的當前狀態
--with-http_realip_module
: 通過這個模塊允許我們改變客戶端請求頭中客戶端IP地址值(例如X-Real-IP 或 X-Forwarded-For),意義在于能夠使得后臺服務器記錄原始客戶端的IP地址
--add-module=PATH
: 添加第三方外部模塊,如nginx-sticky-module-ng或緩存模塊。每次添加新的模塊都要重新編譯(Tengine可以在新加入module時無需重新編譯)
不出意外的話,nginx就安裝完成了。也許在一些低版本的linux上會出現一些小的錯誤,但是沒什么滾西,可能會需要去安裝openssl、和pure,CentOS7已經自帶了,安裝也很簡單不在贅述。安裝完成之后,在你指定的目錄下面多了4個目錄,我們進入sbin中啟動nginx:
出現了”Permission denied“錯誤,明顯是權限問題,如果你熟悉Linux肯定不會感到奇怪,因為Linux的權限是很嚴格的,圖中bind()的是80端口,而Linux需要root權限才能使用1024以下的端口,解決方法也很簡單,下面找到配置文件 nginx.conf把端口改掉即可(玩過Linux系統編程的童鞋應該知道還有一種方法,首先chown nginx為root,然后在打開SET-USER-ID位就OK了,具體怎么操作,用到兩個命令chown、chmod。具體原理見我的博客:http://www.CUOXin.com/ittinybird/p/4466171.html)。
使用nginx -s reload,重新加載配置文件。瀏覽器訪問,出現了歡迎頁面。
整個過程非常簡單,enjoy!
新聞熱點
疑難解答