最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Nginx反向代理與緩存用法及說明

 更新時(shí)間:2026年04月15日 16:27:32   作者:東北甜妹  
文章主要介紹了正向代理和反向代理的概念、用途及其配置方法,反向代理包括負(fù)載均衡、緩存、動(dòng)靜分離等功能,并詳細(xì)介紹了配置思路和具體配置方法,最后,文章提供了配置實(shí)戰(zhàn)示例,幫助讀者更好地理解和應(yīng)用這些知識(shí)

一、正向代理和反向代理

1.1 正向代理(代理的是客戶端)

是什么

  • 就像一個(gè)中間人,幫你(客戶端)去訪問你想去的網(wǎng)站。

有啥用

  • 讓局域網(wǎng)里的電腦能上網(wǎng)。

  • 可以緩存一些數(shù)據(jù),省流量。

  • 訪問那些被墻了或者限制地區(qū)的網(wǎng)站。

  • 隱藏你的真實(shí) IP,對(duì)方看到的是代理服務(wù)器的 IP。

配置思路

  • 客戶端訪問代理服務(wù)器,代理服務(wù)器再去請(qǐng)求目標(biāo)網(wǎng)站。

1.2 反向代理(代理的是服務(wù)器)

是什么

  • 你訪問一個(gè)網(wǎng)站,其實(shí)訪問的是代理服務(wù)器,它再偷偷去背后真正的服務(wù)器拿數(shù)據(jù)給你。你完全不知道背后是哪臺(tái)服務(wù)器。

有啥用

  • 負(fù)載均衡:把很多人的請(qǐng)求分散到多臺(tái)服務(wù)器上,防止一臺(tái)服務(wù)器累垮。

  • 緩存:把不常變的圖片、頁(yè)面存起來,下次直接給你,更快。

  • 動(dòng)靜分離:把圖片、CSS 等靜態(tài)文件和需要計(jì)算的動(dòng)態(tài)頁(yè)面(比如 PHP)分開處理。

多站點(diǎn)共用端口

  • 一臺(tái)服務(wù)器可以代理多個(gè)不同的網(wǎng)站。

常用模塊

  • proxy_module(轉(zhuǎn)發(fā)HTTP請(qǐng)求)、upstream_module(定義服務(wù)器組)、stream_proxy_module(轉(zhuǎn)發(fā)TCP請(qǐng)求)等。

二、反向代理的核心配置

proxy_pass:最重要的一句,告訴 Nginx 把請(qǐng)求轉(zhuǎn)發(fā)給誰(shuí)。

  • 如果地址后面沒有斜杠(/),會(huì)把客戶端請(qǐng)求的路徑拼在后面。

  • 如果地址后面有斜杠(/),會(huì)替換掉客戶端請(qǐng)求的路徑。

  • 如果 location 用了正則表達(dá)式匹配,proxy_pass 后面不能加斜杠。

其他小功能

  • proxy_hide_header:不讓后端服務(wù)器的某些頭部信息(比如服務(wù)器版本)透?jìng)鹘o客戶端。

  • proxy_pass_header:強(qiáng)制讓后端服務(wù)器的某些頭部信息透?jìng)鹘o客戶端。

  • proxy_pass_request_body/headers:控制是否把客戶端的請(qǐng)求體和頭部轉(zhuǎn)發(fā)給后端(默認(rèn)都轉(zhuǎn)發(fā))。

三、配置實(shí)戰(zhàn)(舉例子)

3.1 最簡(jiǎn)單的反向代理

  • 目標(biāo):訪問代理服務(wù)器(192.164.65.100),實(shí)際看到的是后端服務(wù)器(192.164.65.101)上的網(wǎng)站內(nèi)容。

  • 操作:在代理服務(wù)器的配置里寫一句 proxy_pass http://192.164.65.101; 就行了。

3.2 動(dòng)靜分離

  • 目標(biāo):請(qǐng)求 /api 開頭的地址,轉(zhuǎn)發(fā)給動(dòng)態(tài)服務(wù)器(101);請(qǐng)求 /static 開頭的地址,轉(zhuǎn)發(fā)給靜態(tài)服務(wù)器(103)。

  • 操作:配置兩個(gè) location,分別指向不同的后端服務(wù)器。

3.3 緩存功能

  • 目標(biāo):把后端返回的圖片、頁(yè)面存到代理服務(wù)器本地,下次有人要,直接給,不用再去麻煩后端。

操作

  • 先在 http 塊里用 proxy_cache_path 定義一個(gè)緩存目錄和規(guī)則(比如放哪兒,多大,存多久)。
  • 再在 server 或 location 里用 proxy_cache 開啟緩存,用 proxy_cache_valid 設(shè)置哪些狀態(tài)碼的響應(yīng)需要緩存多久。
  • 清緩存:直接刪緩存文件夾,或者用專門的模塊。

3.4 客戶端 IP 透?jìng)鳎ㄗ尯蠖酥勒l(shuí)在訪問)

問題:用了代理后,后端服務(wù)器看到的都是代理服務(wù)器的 IP,不知道真正的用戶是誰(shuí)。

  • 一級(jí)代理:在代理服務(wù)器配置里加一句 proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;,把用戶的真實(shí) IP 塞進(jìn)請(qǐng)求頭里傳給后端。

  • 多級(jí)代理:每一級(jí)代理都這么配置,X-Forwarded-For 這個(gè)頭就會(huì)把經(jīng)過的所有 IP 都記錄下來,像一個(gè)鏈路清單。

3.5 & 3.6 負(fù)載均衡

  • 是什么:把請(qǐng)求分給一組服務(wù)器(上游服務(wù)器組)去處理。

怎么配

  • 先用 upstream 定義一個(gè)服務(wù)器組,把多臺(tái)后端服務(wù)器的 IP 列進(jìn)去。
  • 然后在 location 里用 proxy_pass http://組名; 把請(qǐng)求交給這個(gè)組處理。

調(diào)度算法(怎么分任務(wù))

  • 輪詢:一人一個(gè),輪流來。
  • 加權(quán)輪詢:性能好的多分幾個(gè)任務(wù)(weight=3),性能差的少分幾個(gè)(weight=1)。
  • ip_hash:同一個(gè) IP 的人,每次都分給同一臺(tái)服務(wù)器(解決登錄狀態(tài)丟失問題)。
  • least_conn:誰(shuí)當(dāng)前處理的連接少,就分給誰(shuí)。
  • 第三方算法fair(誰(shuí)反應(yīng)快分給誰(shuí))、url_hash(同一個(gè)網(wǎng)址分給同一臺(tái)服務(wù)器,適合做緩存)。

服務(wù)器狀態(tài)

  • down:標(biāo)記為下線。
  • backup:備胎服務(wù)器,其他主服務(wù)器都掛了才啟用。
  • max_fails 和 fail_timeout:連續(xù)失敗幾次就認(rèn)為服務(wù)器掛了,過多久再去檢查它有沒有恢復(fù)。

總結(jié)

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • Nginx流量拷貝ngx_http_mirror_module模塊使用方法詳解

    Nginx流量拷貝ngx_http_mirror_module模塊使用方法詳解

    這篇文章主要介紹了Nginx流量拷貝,Nginx專門提供了ngx_http_mirror_module模塊,用來實(shí)現(xiàn)流量拷貝。將生產(chǎn)環(huán)境的流量拷貝到預(yù)上線環(huán)境或測(cè)試環(huán)境
    2022-04-04
  • nginx配置文件使用環(huán)境變量的操作方法

    nginx配置文件使用環(huán)境變量的操作方法

    Nginx是一款開源代碼的高性能HTTP服務(wù)器和反向代理服務(wù)器,同時(shí)支持IMAP/POP3/SMTP代理服務(wù),相較于Apache、lighttpd具有占有內(nèi)存少,穩(wěn)定性高等優(yōu)勢(shì),所以深受用戶喜愛,今天小編給大家分享nginx配置文件使用環(huán)境變量的操作方法,感興趣的朋友一起看看吧
    2021-06-06
  • 通過Nginx的proxy_set_header設(shè)置請(qǐng)求頭無效的解決

    通過Nginx的proxy_set_header設(shè)置請(qǐng)求頭無效的解決

    這篇文章主要介紹了通過Nginx的proxy_set_header設(shè)置請(qǐng)求頭無效的解決,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-12-12
  • Nginx反向代理在Web應(yīng)用中的實(shí)戰(zhàn)分享

    Nginx反向代理在Web應(yīng)用中的實(shí)戰(zhàn)分享

    本文將介紹Nginx反向代理的基本原理和配置,以及如何利用Nginx實(shí)現(xiàn)高可用性和故障轉(zhuǎn)移,最后,我們將探討如何監(jiān)控Nginx反向代理的性能并進(jìn)行日志分析,需要的朋友可以參考下
    2024-08-08
  • 聊聊配置?Nginx?訪問與錯(cuò)誤日志的問題

    聊聊配置?Nginx?訪問與錯(cuò)誤日志的問題

    這篇文章主要介紹了配置?Nginx?訪問與錯(cuò)誤日志,Nginx是一個(gè)開放源代碼的高性能HTTP和反向代理服務(wù)器,負(fù)責(zé)處理Internet上某些最大站點(diǎn)的負(fù)載,對(duì)Nginx?錯(cuò)誤日志相關(guān)知識(shí)感興趣的朋友一起看看吧
    2022-05-05
  • nginx使用nginx-rtmp-module模塊實(shí)現(xiàn)直播間功能

    nginx使用nginx-rtmp-module模塊實(shí)現(xiàn)直播間功能

    做的過程出現(xiàn)很多問題,環(huán)境其實(shí)就需要nginx就可以,然后就是在播放的問題,m3u8的格式,mac直接訪問就支持,蘋果系統(tǒng)原生H5支持m3u8,還有就是手機(jī)直接訪問也支持!但是其他其他系統(tǒng)PC端不支持,嘗試了好多都不行,最后終于找到了一個(gè)支持m3u8格式H5播放
    2017-10-10
  • Nginx配置origin限制跨域請(qǐng)求的詳細(xì)過程

    Nginx配置origin限制跨域請(qǐng)求的詳細(xì)過程

    這篇文章主要介紹了Nginx配置origin限制跨域請(qǐng)求的相關(guān)知識(shí),本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2023-06-06
  • Nginx代理Partainer的具體使用

    Nginx代理Partainer的具體使用

    本文主要介紹了Nginx代理Partainer的具體使用,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2023-03-03
  • Nginx gateway集群和動(dòng)態(tài)網(wǎng)關(guān)的實(shí)現(xiàn)思路

    Nginx gateway集群和動(dòng)態(tài)網(wǎng)關(guān)的實(shí)現(xiàn)思路

    這篇文章主要介紹了Nginx gateway集群和動(dòng)態(tài)網(wǎng)關(guān),動(dòng)態(tài)網(wǎng)關(guān)即任何配置都實(shí)現(xiàn)不用重啟網(wǎng)關(guān)服務(wù)器都可以及時(shí)刷新,對(duì)Nginx gateway集群相關(guān)知識(shí)感興趣的朋友一起看看吧
    2022-10-10
  • nginx部署多前端項(xiàng)目的幾種方法

    nginx部署多前端項(xiàng)目的幾種方法

    最近一臺(tái)服務(wù)器要配置多個(gè)前端項(xiàng)目,個(gè)人總結(jié)了3種方法來實(shí)現(xiàn)在一臺(tái)服務(wù)器上使用nginx部署多個(gè)前端項(xiàng)目的方法。需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-05-05

最新評(píng)論

江源县| 大英县| 法库县| 长治市| 赞皇县| 文山县| 西昌市| 宝坻区| 遂川县| 天津市| 吴川市| 绿春县| 买车| 杂多县| 太谷县| 宁阳县| 龙州县| 桂平市| 张家界市| 清河县| 平遥县| 易门县| 绥江县| 明溪县| 诏安县| 万州区| 博兴县| 襄垣县| 张北县| 湘潭县| 临沂市| 酉阳| 云林县| 中卫市| 讷河市| 麟游县| 黄龙县| 枣庄市| 应用必备| 伊宁市| 公安县|