文章目錄
- 一、Nginx是什么?
- 二、如何安裝Nginx
- 1.安裝所需插件
- (1).安裝gcc
- (2).pcre、pcre-devel安裝
- (3).zlib安裝
- (4).安裝openssl
- 2.安裝nginx
- (1).下載安裝包
- (2).把壓縮包解壓到usr/local/java
- (3).切換到cd /usr/local/java/nginx-1.9.9/下面
- (4).切換到/usr/local/nginx安裝目錄
- (5).配置nginx的組態檔nginx.conf檔案,主要也就是埠
- (6).啟動nginx服務
- (7).查看nginx服務是否啟動成功
- (8).訪問自己的IP出現如下界面,說明安裝成功啦!
- 3 .相關配置Nginx服務
- 三、Nginx作用
- 1.Http代理,反向代理:
- (1).什么是反向代理:代理服務器端
- (2).作用
- (3).反向代理配置
- 2.負載均衡
- (1).什么是負載均衡
- (2).采用方式
- (3).負載均衡配置
- 3.動靜分離
- 四、Nginx的特點
一、Nginx是什么?
Nginx 是一款輕量級的HTTP 服務器,采用事件驅動的異步非阻塞處理方式框架,這讓其具有極好的 IO 性能,時常用于服務端的反向代理和負載均衡,
二、如何安裝Nginx
1.安裝所需插件
(1).安裝gcc
gcc -v #查看gcc版本
yum -y install gcc #安裝gcc
(2).pcre、pcre-devel安裝
pcre是一個perl庫,包括perl兼容的正則運算式庫,nginx的http模塊使用pcre來決議正則運算式,所以需要安裝pcre庫,
yum install -y pcre pcre-devel
(3).zlib安裝
zlib庫提供了很多種壓縮和解壓縮方式nginx使用zlib對http包的內容進行gzip,所以需要安裝
yum install -y zlib zlib-devel
(4).安裝openssl
openssl是web安全通信的基石
yum install -y openssl openssl-devel
2.安裝nginx
(1).下載安裝包
wget http://nginx.org/download/nginx-1.9.9.tar.gz
(2).把壓縮包解壓到usr/local/java
tar -zxvf nginx-1.9.9.tar.gz -C /usr/local/java
(3).切換到cd /usr/local/java/nginx-1.9.9/下面
./configure
make
make install
(4).切換到/usr/local/nginx安裝目錄
cd /usr/local/nginx
(5).配置nginx的組態檔nginx.conf檔案,主要也就是埠
cd /usr/local/nginx
cd conf


(6).啟動nginx服務
切換目錄到/usr/local/nginx/sbin下面

啟動nginx
./nginx
(7).查看nginx服務是否啟動成功
ps -ef | grep nginx

(8).訪問自己的IP出現如下界面,說明安裝成功啦!

3 .相關配置Nginx服務
sudo systemctl enable nginx # 設定開機啟動
sudo service nginx start # 啟動 nginx 服務
sudo service nginx stop # 停止 nginx 服務
sudo service nginx restart # 重啟 nginx 服務
sudo service nginx reload # 重新加載配置,一般是在修改過 nginx 組態檔時使用,
三、Nginx作用
1.Http代理,反向代理:
(1).什么是反向代理:代理服務器端
反向代理其實就類似你去找代購幫你買東西(瀏覽器或其他終端向nginx請求),你不用管他去哪里買,只要他幫你買到你想要的東西就行(瀏覽器或其他終端最終拿到了他想要的內容,但是具體從哪兒拿到的這個程序它并不知道),
正向代理:代理客戶端,正向代理最大的特點是客戶端非常明確要訪問的服務器地址,服務器只清楚請求來自哪個代理服務器,而不清楚來自哪個具體的客戶端;正向代理模式屏蔽或者隱藏了真實客戶端資訊

(2).作用
(1)保障應用服務器的安全(增加一層代理,可以屏蔽危險攻擊,更方便的控制權限)
(2)實作負載均衡
(3)實作跨域(最簡單的跨域方式)
(3).反向代理配置
#1、新建/修改組態檔
sudo vi /etc/nginx/server/default.conf
#2、配置示例
server {
listen 80; #監聽80埠
server_name ken.io.local; #監聽的域名
location / { #轉發或處理
proxy_pass https://ken.io;
}
error_page 500 502 503 504 /50x.html;#錯誤頁
location = /50x.html {
root /usr/share/nginx/html;
}
}
2.負載均衡
(1).什么是負載均衡
客戶端發送的、Nginx反向代理服務器接收到的請求數量,就是我們說的負載量,請求數量按照一定的規則進行分發到不同的服務器處理的規則,就是一種均衡規則,將服務器接收到的請求按照規則分發的程序,稱為負載均衡,
(2).采用方式
輪詢:權重為1

加權輪詢:依次遞增

iphash:對客戶端請求的ip進行hash操作,然后根據hash結果將同一個客戶端的ip的請求分發給同一臺服務器進行處理,可以解決session不共享的問題,

(3).負載均衡配置
upstream serverswitch {
server 127.0.0.1:80;
server 127.0.0.1:81;
}
server {
listen 80; #監聽80埠
server_name ken.io.local; #監聽的域名
location / { #轉發或處理
proxy_pass https://serverswitch;
}
error_page 500 502 503 504 /50x.html;#錯誤頁
location = /50x.html {
root /usr/share/nginx/html;
}
}
3.動靜分離
靜態請求直接從 nginx 服務器所設定的根目錄路徑去取對應的資源,動態請求轉發給真實的后臺(前面所說的應用服務器,如圖中的Tomcat)去處理,動靜資源做好拆分后,利用靜態資源的特點做快取操作,提高回應效率,

好處:
1.api介面服務化:動靜分離之后,后端應用更為服務化,只需要通過提供api介面即可,可以為多個功能模塊甚至是多個平臺的功能使用,可以有效的節省后端人力,更便于功能維護,
2.前后端開發并行:前后端只需要關心介面協議即可,各自的開發相互不干擾,并行開發,并行自測,可以有效的提高開發時間,也可以有些的減少聯調時間
3.減輕后端服務器壓力,提高靜態資源訪問速度:后端不用再將模板渲染為html回傳給用戶端,且靜態服務器可以采用更為專業的技術提高靜態資源的訪問速度,
四、Nginx的特點
1.占有記憶體少、并發能力強,能支撐50000個并發連接數的回應,
2.擴展性好,第三方插件非常多,
3.具有很高的可靠性,
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/308718.html
標籤:其他
上一篇:隱藏隧道通信技術
