1. 程式人生 > >Nginx安裝及常見錯誤

Nginx安裝及常見錯誤

1.Nginx安裝環境

Nginx是C語言開發,建議在linux上執行,本教程使用Centos7.0作為安裝環境.
1)gcc
安裝nginx需要先將官網下載的原始碼進行編譯,編譯依賴gcc環境,如果沒有gcc環境,需要安裝gcc
需要執行的命令:yum install gcc-c++ 
2)PCRE
PCRE(Perl Compatible Regular Expressions)是一個Perl庫,包括 perl 相容的正則表示式庫。nginx的http模組使用pcre來解析正則表示式,所以需要在linux上安裝pcre庫。
需要執行的命令:yum install -y pcre pcre-devel


3)zlib
zlib庫提供了很多種壓縮和解壓縮的方式,nginx使用zlib對http包的內容進行gzip,所以需要在linux上安裝zlib庫。
需要執行的命令:yum install -y zlib zlib-devel
4)openssl
OpenSSL 是一個強大的安全套接字層密碼庫,囊括主要的密碼演算法、常用的金鑰和證書封裝管理功能及SSL協議,並提供豐富的應用程式供測試或其它目的使用。
nginx不僅支援http協議,還支援https(即在ssl協議上傳輸http),所以需要在linux安裝openssl庫。
需要執行的命令:yum install -y openssl openssl-devel

2.編譯安裝

   將nginx-1.8.0.tar.gz(地址:Nginx-1.8.0.tar.gz)拷貝至linux伺服器.在安裝的時候我會安裝在/usr/local目錄下,所以將Nginx的tar包拷貝到usr/local目錄下.可以使用winSCP軟體將tar包拷貝到local目錄下.

1)解壓:

使用命令:tar -zxvf nginx-1.8.0.tar.gz,將Nginx進行解壓.

解壓成功:

 

 

2)配置configure:

在nginx-1.8.0目錄下執行如下命令:

 

 
  1. ./configure \

  2. --prefix=/usr/local/nginx \

  3. --pid-path=/var/run/nginx/nginx.pid \

  4. --lock-path=/var/lock/nginx.lock \

  5. --error-log-path=/var/log/nginx/error.log \

  6. --http-log-path=/var/log/nginx/access.log \

  7. --with-http_gzip_static_module \

  8. --http-client-body-temp-path=/var/temp/nginx/client \

  9. --http-proxy-temp-path=/var/temp/nginx/proxy \

  10. --http-fastcgi-temp-path=/var/temp/nginx/fastcgi \

  11. --http-uwsgi-temp-path=/var/temp/nginx/uwsgi \

  12. --http-scgi-temp-path=/var/temp/nginx/scgi


 

3)編譯安裝

執行make命令

執行make stall命令

安裝成功檢視安裝目錄

 

4)執行Nginx

進入到sbin目錄下,執行./nginx命令.

5)檢視程序

3.測試Nginx是否執行成功

Nginx的埠是80,所以在瀏覽器上執行http:[linux的ip地址]即可,如果執行成功,出現如下介面

 

如果沒有出現下面的介面,表示遠端連線沒有成功,如果linux的程序已經啟動,嘗試著將linux的防火牆關閉,執行如下命令,關閉防火牆,然後檢視一下防火牆的狀態.

要是網頁顯示不出welcome介面,可能沒關防火牆或者沒有開啟埠安裝iptables並開啟8080埠;

 

安裝iptables-services軟體包

yum install iptables-services

,cd etc/sysconfig檔案中,vi iptables,然後儲存

 

執行完這個操作以後,再檢視一下在本地是否能連上Nginx.

遇到的問題:

1.[emerg]mkdir()"/var/temp/nginx/client" failed(2:No such file or directory)

解決方法:

查看了一下是由於沒有Nginx/client的目錄.缺少對應的檔案,建立相應的檔案就好.

2.nginx/logs/nginx.pid" failed (2: No such file or directory)

 

解決方法:

重新編譯(make,make install),安裝就好.