前言
本篇文章主要介紹的是Nginx Linux環境和Windows的安裝教程。
Nginx 介紹
Nginx(“engine x”)是一款是由俄羅斯的程式設計師Igor Sysoev所開發高效能的 Web和 反向代理 伺服器,也是一個 IMAP/POP3/SMTP 代理伺服器。
HTTP基礎功能:
處理靜態檔案,索引檔案以及自動索引;
反向代理加速(無快取),簡單的負載均衡和容錯;
FastCGI,簡單的負載均衡和容錯;
模組化的結構。過濾器包括gzipping, byte ranges, chunked responses, 以及 SSI-filter 。在SSI過濾器中,到同一個 proxy 或者 FastCGI 的多個子請求併發處理;
SSL 和 TLS SNI 支援;
IMAP/POP3 代理服務功能:
使用外部 HTTP 認證伺服器重定向使用者到 IMAP/POP3 後端;
使用外部 HTTP 認證伺服器認證使用者後連線重定向到內部的 SMTP 後端;
認證方法:
POP3: POP3 USER/PASS, APOP, AUTH LOGIN PLAIN CRAM-MD5;
IMAP: IMAP LOGIN;
SMTP: AUTH LOGIN PLAIN CRAM-MD5;
SSL 支援;
在 IMAP 和 POP3 模式下的 STARTTLS 和 STLS 支援;
。。。
更多的理論知識這裡就不在介紹了,詳細的可以檢視官方的文件,地址:http://nginx。org/en/
上圖是關於Nginx的反向代理和負載均衡實現的圖,所謂的反向代理就是把客戶端的請求透過一定的規則進行分發給後端伺服器,負載均衡就是根據制定的策略將請求分發給不同的伺服器。Nginx預設的是weight(權重)輪詢(預設),將接收到的請求按照權重分配到不同的後端伺服器,權重越大,該伺服器分配的請求機率越大,相應請求也就越多,在執行過程如果某一臺伺服器突然宕機,Nginx檢測到之後會自動將該伺服器移除,保證請求不會受到影響,個人測試在有宕機的伺服器的時候進行訪問會有一點卡頓,後續就好了。
這裡在簡單說下正向代理和反向代理的區別,一句話概括:
正向代理主要是為客戶端發出請求。反向代理主要是為服務端接收請求。
Nginx Linux安裝
nginx依賴於pcre、Openssl和zlib,PCRE作用是讓Nginx支援Rewrite 功能。
PCRE下載地址: https://sourceforge。net/projects/pcre/files/
Zlib下載地址: http://zlib。net/
Openssl 下載地址: http://www。openssl。org/source
Nginx下載地址: http://nginx。org/download
PCRE安裝
1、檔案準備
將下載的檔案透過ftp進行檔案上傳到/opt/nginx目錄下,沒有就新建。
然後進行解壓,解壓命令示例:
tar zxvf pcre-8。35。tar。gz
2、安裝
然後進行解壓之後的目錄,進行編譯安裝,輸入:
cd pcre-8。35 。/configure make make install
安裝成功之後檢視版本資訊,輸入:
pcre-config ——version
Zlib安裝
基本和上述一樣。
1、檔案準備
將下載的檔案透過ftp進行檔案上傳到/opt/nginx目錄下,然後進行解壓,解壓命令示例:
tar -zxvf zlib-1。2。11。tar。gz
2、安裝
然後進行解壓之後的目錄,進行編譯安裝,輸入:
cd zlib-1。2。11 。/configure make make install
Openssl 安裝
基本和上述一樣。
1、檔案準備
將下載的檔案透過ftp進行檔案上傳到/opt/nginx目錄下,然後進行解壓,解壓命令示例:
tar -zxvf openssl-1。0。2q。tar。gz
2、安裝
然後進行解壓之後的目錄,進行編譯安裝,輸入:
cd openssl-1。0。2q 。/config make make install
Nginx 安裝
這個基本也一樣。
1、檔案準備
將下載的檔案透過ftp進行檔案上傳到/opt/nginx目錄下,然後進行解壓,解壓命令示例:
tar zxvf nginx-1。6。2。tar。gz
2、安裝
然後進行解壓之後的目錄,進行編譯安裝,輸入:
cd nginx-1。6。2 。/config make make install
安裝成功之後檢視版本資訊,輸入:
/usr/local/nginx/sbin/nginx -v
若出現:
Nginx: error while loading shared libraries: libpcre.so.1
則說明未安裝pcre或安裝了未設定軟鏈,安裝或者設定器軟鏈即可,命令示例:
ln -s /usr/local/lib/libpcre。so。1 /lib64/
3、Nginx命令
測試nginx。conf的配置是否正確命令:
/usr/local/nginx/sbin/nginx -t
根據nginx。conf裡的配置,啟動nginx服務命令:
/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx。conf
配置檔案熱載入命令:
/usr/local/nginx/sbin/nginx -s reload
關閉命令:
kill -QUIT `cat /usr/local/nginx/logs/nginx。pid`
或找到nginx的程序,然後kill殺死即可,包括nginx的守護程序。
ps -ef | grep nginxkill -9 pid
重啟命令:
kill -HUP `cat /usr/local/nginx/logs/nginx。pid`
Nginx啟動成功之後在瀏覽器直接輸入linux的ip便可以直接訪問,埠預設的是80,可以不用輸入埠!
Nginx Windows安裝
Windows Nginx安裝不需要上述的依賴,直接下載解壓執行即可。
Windows Nginx 下載地址: https://nginx。org/en/download。html?_ga=2。72556755。1143934847。1574131849-1552750179。1574131849
下載介面:
下載Nginx之後進行解壓,雙擊nginx。exe執行或者在同級目錄下cmd輸入
start nginx
啟動。
輸入:
nginx -s stop
或
nginx -s quit
都可以停止nginx,區別就是後者會儲存相關資訊,前者不會。
熱載入命令依舊是
nginx -s reload
。
Nginx啟動成功之後在瀏覽器直接輸入localhost或127。0。0。1便可以直接訪問!