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目錄下執行如下命令:
-
./configure \
-
--prefix=/usr/local/nginx \
-
--pid-path=/var/run/nginx/nginx.pid \
-
--lock-path=/var/lock/nginx.lock \
-
--error-log-path=/var/log/nginx/error.log \
-
--http-log-path=/var/log/nginx/access.log \
-
--with-http_gzip_static_module \
-
--http-client-body-temp-path=/var/temp/nginx/client \
-
--http-proxy-temp-path=/var/temp/nginx/proxy \
-
--http-fastcgi-temp-path=/var/temp/nginx/fastcgi \
-
--http-uwsgi-temp-path=/var/temp/nginx/uwsgi \
-
--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),安裝就好.