日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > Nginx >内容正文

Nginx

Nginx初探

發布時間:2025/5/22 Nginx 128 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Nginx初探 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

?

2016-08-23?王維?王女士的IT之旅

引言

在項目質量保障過程中,尤其是在測試環境的搭建和維護時,經常要與nginx打交道,比如短鏈接、api的ACL控制等配置都與nginx相關。筆者從研究項目的nginx配置出發,然后在本地搭建了nginx服務,開展了進一步探索,將學習的過程記錄于此,一是對自己知識的梳理,二是希望對有緣人有點幫助。

正文

nginx是一個web網站常用的高性能http和反向代理服務器,其具有較好的并發能力,被網易、百度、騰訊、新浪等網站廣泛使用。

1.首先弄清楚正向代理和反向代理

正向代理:代理客戶端,替客戶端收發請求,使真實的客戶端對服務器不可見。如圖所示,proxy和client同屬于一個網絡,對server透明

?


反向代理:代理服務器,提服務器收發請求,使真實的服務器對客戶端不可見。如圖所示,proxy和server同屬于一個網絡,對client透明

?



實際上proxy都是代為收發請求和響應,只是在結構上左右換了下,所以一個叫正向代理,另一個叫反向代理。

2.nginx的反向代理原理

如下圖所示:nginx作為反向代理服務器接收來自客戶端的http請求,然后將請求轉發給內部網絡的web服務器,同時接收來自web服務器的response結果,并返回給客戶端。此時nginx代理服務器對外展現為一個服務器。

?

3.nginx的反向代理的作用

(1)負載均衡。nginx可以將來自客戶端的請求均衡的分發到web服務器集群中的不同機器上進行處理,平衡集群中各個服務器的壓力。這對于大訪問量的web網站來說,是需要的。
(2)安全保障。客戶端直接訪問的不是提供內容的web服務器,為保護網站服務器提供了一層屏障,有利于保護網站的安全。
(3)加速web請求。nginx可以配置緩存,存儲真實web服務器的某些資源和響應,減輕真實服務器的壓力,同時加速web請求

4.本地搭建nginx服務

工作機器是windows環境:
Step1: nginx官網下載nginx壓縮包。
Step2: 進行解壓到nginx目錄
Step3:啟動nginx,命令:
cd nginx start nginx.exe 啟動成功標志:在瀏覽器輸入127.0.0.1 會出現nginx的歡迎頁面
Step4:配置nginx的conf文件
nginx.conf里面有很多配置參數,主要有:工作模式、最大連接數配置(events)和http服務器設置
(1)將baidu的html頁面保存至nginx/html的新建文件夾nginxFiles下,然后進行如下的配置:
server{ ? ?

listen 80; ? ? ?

server_name localhost; ? ?

location / { ? ? ? ? ? ? ? ? root html/nginxFiles; ?

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? index baidu.html; ? ? ?

? ? ? ? ? ? }

}
以上配置代表:將域名localhost,端口80的“/”下請求,定位到本地root的位置,默認的首頁是baidu.html。配置后重啟nginx,在瀏覽器中再次輸入127.0.0.1就會自動出現baidu的頁面。
(2)配置負載均衡 首先在http中配置負載均衡機器列表,如下所示:每個server代表一臺機器,后面加上ip地址:端口,weight代表權重,權重越大,則nginx把客戶端請求轉發給他的可能性就越大。
upstream vivi{ ? ?

server 127.0.0.1:8050 ?weight=1; ? ? ? ?

server 127.0.0.1:8060 ?weight=2;

}
然后配置server中的location,如下:表示攔截域名后帶/所有請求,轉發至vivi中的機器進行處理,實現負載均衡。proxy_pass表示請求轉向自定義服務器列表。項目中的短鏈接服務,就是用proxy_pass請求轉向短鏈接服務器即可。
location / {

? ? proxy_pass http://vivi;

}
Step5:修改配置后,重啟nginx服務生效。常用的nginx命令
start nginx.exe ?#啟動

nginx nginx -s stop ?#關閉

nginx nginx -s reload #重啟nginx

5.nginx支持多域名配置

可以在一個文件中配置多個server,如下:
server{ ? ? ?listen 80; ? ?

?server_name www.vivi.com; #綁定域名 ?

?index index.htm index.html index.php #默認文件 ? ?

?root /home/www/vivi.com #網站根目錄 ? ? ? ? ? ?

?include location.conf #調用其他規則,也可去除 }

?

server{ ? ?

listen 81; ? ?

server_name www.test.com; #綁定域名 ?

index index.htm index.html index.php #默認文件 ?

root ? ? ? ?/home/www/msn.web126.com #網站根目錄 ? ?

include location.conf #調用其他規則,也可去除

}


也可以在一個server中的server_name后面配置多個域名,如:
server{ ? ? ?

? listen 80; ?

? server_name www.vivi.vom www.test.com

}

6.nginx的域名匹配順序

(1)準確的server_name匹配,如下配置:只精準vivi.info 和 www.vivi.info兩個域名:

server{ ?listen 80;

? ? ? ? ?server_name vivi.info www.vivi.info; ?

? ? ? ? ?... }

(2)以通配符開始的字符串,如下配置:能匹配以vivi.info結尾的所有域名

server{ listen 80;

? ? ? ? ?server_name *.vivi.info;

? ? ? ?... }

(3)以通配符結束的字符串,如下配置:能匹配以www開頭的所有域名

server{ listen 80;

? ? ? ? server_name www.*; ...

? ? ?}

(4)匹配正則表達式,如下配置:能匹配以vivi.org結尾的所有域名

server{ listen 80;

? ? ? ? server_name vivi\.org$; ...

?

? ? ? ? }

結語

本文只根據項目的需要,研究了項目中常用的配置,為了提高nginx性能,還有很多高級的配置參數,可以根據需要進行深入學習
推薦學習資料:nginx官網文檔

轉載于:https://www.cnblogs.com/zengkefu/p/5814793.html

總結

以上是生活随笔為你收集整理的Nginx初探的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。