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

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 前端技术 > HTML >内容正文

HTML

【前端词典】如何向老板解释反向代理

發(fā)布時(shí)間:2025/6/17 HTML 81 豆豆
生活随笔 收集整理的這篇文章主要介紹了 【前端词典】如何向老板解释反向代理 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

【前端詞典】如何向老板解釋反向代理

前言

現(xiàn)在看到的這篇文章是修改后的第三個(gè)版本。

由于我家老板看過之后,對(duì)這篇文章的評(píng)價(jià)是:寫的不錯(cuò),語(yǔ)句是通順的,排版是可以的,但反向代理是什么還是不清楚?所以我就想嘗試著向非 IT 工作者解釋“正向代理”和“反向代理”。

接下來我會(huì)先嘗試面向大眾,來解釋“代理”的概念。在從專業(yè)的角度解釋“正向代理”和“反向代理”。

概念實(shí)例化

在講代理的概念之前我先講個(gè)類比。也是我向我家老板解釋的過程。

?

還好我反應(yīng)機(jī)敏,要不然這個(gè)月的零花錢就要替我擋一刀了。可是我該怎么解釋呢?還要讓沒有編程語(yǔ)言基礎(chǔ)的人也聽懂,傷腦筋啊!

?

在沒有思緒的時(shí)候,她突然問我晚上吃了沒有?這不就是很好的例子嗎?

?

?

解釋了這么久,不知道是真的懂了,還是因?yàn)樘Я恕2贿^我有錢吃肉了。

接下來我們就認(rèn)真的看看“正向代理”和“反向代理”

概念

首先看看說明圖,先有一個(gè)整體的理解。

?

?

正向代理( Forward Proxy ):

是指是一個(gè)位于客戶端和原始服務(wù)器之間的服務(wù)器,為了從原始服務(wù)器取得內(nèi)容, 客戶端向代理發(fā)送一個(gè)請(qǐng)求并指定目標(biāo)(原始服務(wù)器),然后代理向原始服務(wù)器轉(zhuǎn)交請(qǐng)求并將獲得的內(nèi)容返回給客戶端。客戶端才能使用正向代理。

反向代理( Reverse Proxy ):

是指以代理服務(wù)器來接受 Internet 上的連接請(qǐng)求,然后將請(qǐng)求轉(zhuǎn)發(fā)給內(nèi)部網(wǎng)絡(luò)上的服務(wù)器,并將從服務(wù)器上得到的結(jié)果返回給 Internet 上請(qǐng)求連接的客戶端,此時(shí)代理服務(wù)器對(duì)外就表現(xiàn)為一個(gè)反向代理服務(wù)器。

接下來我提煉一下各自的特點(diǎn)。

特點(diǎn)

正向代理

  • 代理客戶;
  • 隱藏真實(shí)的客戶,為客戶端收發(fā)請(qǐng)求,使真實(shí)客戶端對(duì)服務(wù)器不可見;
  • 一個(gè)局域網(wǎng)內(nèi)的所有用戶可能被一臺(tái)服務(wù)器做了正向代理,由該臺(tái)服務(wù)器負(fù)責(zé) HTTP 請(qǐng)求;
  • 意味著同服務(wù)器做通信的是正向代理服務(wù)器;
  • 反向代理

  • 代理服務(wù)器;
  • 隱藏了真實(shí)的服務(wù)器,為服務(wù)器收發(fā)請(qǐng)求,使真實(shí)服務(wù)器對(duì)客戶端不可見;
  • 負(fù)載均衡服務(wù)器,將用戶的請(qǐng)求分發(fā)到空閑的服務(wù)器上;
  • 意味著用戶和負(fù)載均衡服務(wù)器直接通信,即用戶解析服務(wù)器域名時(shí)得到的是負(fù)載均衡服務(wù)器的 IP ;
  • 共同點(diǎn)

  • 都是做為服務(wù)器和客戶端的中間層
  • 都可以加強(qiáng)內(nèi)網(wǎng)的安全性,阻止 web 攻擊
  • 都可以做緩存機(jī)制,提高訪問速度
  • 區(qū)別

  • 正向代理其實(shí)是客戶端的代理,反向代理則是服務(wù)器的代理。
  • 正向代理中,服務(wù)器并不知道真正的客戶端到底是誰(shuí);而在反向代理中,客戶端也不知道真正的服務(wù)器是誰(shuí)。
  • 作用不同。正向代理主要是用來解決訪問限制問題;而反向代理則是提供負(fù)載均衡、安全防護(hù)等作用。
  • 說了這么多,現(xiàn)在說說代理在工作中的時(shí)機(jī)應(yīng)用場(chǎng)景吧。

    實(shí)際應(yīng)用

    FQ軟件 —— 正向代理

    我們知道在國(guó)內(nèi)用訪問?www.google.com?是無法訪問的,因?yàn)檎G闆r下是會(huì)被 GFW 限制訪問的。

    可是你還是想使用 google 來上網(wǎng)的話,這個(gè)時(shí)候我們就需要一些代理(FQ軟件)來幫我們?nèi)フ?qǐng)求?www.google.com,代理再把響應(yīng)結(jié)果返回給你。

    GFW 的作用主要是用于分析和過濾中國(guó)境內(nèi)外網(wǎng)絡(luò)間的互相訪問。也就是說,他不僅能限制國(guó)內(nèi)網(wǎng)民訪問境外的某些站點(diǎn),也能限制國(guó)外用戶訪問國(guó)內(nèi)的站點(diǎn)。 我們通常說的“被墻”,就是指訪問被 GFW 所限制。而”FQ“,顧名思義,則是突破 GFW 的限制。

    Nginx 服務(wù)器 —— 反向代理

    Nginx 服務(wù)器的功能有很多,諸如反向代理、負(fù)載均衡、靜態(tài)資源服務(wù)器等。

    客戶端本來可以直接通過 HTTP 協(xié)議訪問服務(wù)器,不過我們可以在中間加上一個(gè) Nginx 服務(wù)器,客戶端請(qǐng)求 Nginx 服務(wù)器,Nginx 服務(wù)器請(qǐng)求應(yīng)用服務(wù)器,然后將結(jié)果返回給客戶端,此時(shí) Nginx 服務(wù)器就是反向代理服務(wù)器。

    在虛擬主機(jī)的配置中配置反向代理

    # 虛擬主機(jī)的配置 server {listen 8080; # 監(jiān)聽的端口server_name 192.168.1.1; # 配置訪問域名root /data/toor; # 站點(diǎn)根目錄error_page 502 404 /page/404.html; # 錯(cuò)誤頁(yè)面 location ^~ /api/ { # 使用 /api/ 代理 proxy_pass 的值 proxy_pass http://192.168.20.1:8080; # 被代理的應(yīng)用服務(wù)器 HTTP 地址 } } 復(fù)制代碼

    以上簡(jiǎn)單的配置就可以實(shí)現(xiàn)反向代理的功能。

    當(dāng)然反向代理也可以處理跨域問題。

    對(duì)于使用 vue-cli 搭建的工程而言,我們知道 vue-cli 采用 http-proxy-middleware 插件來進(jìn)行代理服務(wù)器等各項(xiàng)配置。

    所以我們可以利用 proxyTable,設(shè)置地址映射表。即使用?proxyTable?這個(gè)屬性進(jìn)行相關(guān)的配置來解決跨域問題帶來的煩惱。配置如下:

    ... proxyTable: {'/weixin': {target: 'http://192.168.20.1:8080/', // 接口的域名secure: false, // 如果是 https 接口,需要配置這個(gè)參數(shù)changeOrigin: true, // 如果接口跨域,需要進(jìn)行這個(gè)參數(shù)配置pathRewrite: {'^/weixin': '' } }, }, ... 復(fù)制代碼

    負(fù)載均衡的配置

    # upstream 表示負(fù)載服務(wù)器池,定義名字為 my upstream my {server 192.168.2.1:8080 weight=1 max_fails=2 fail_timeout=30s;server 192.168.2.2:8080 weight=1 max_fails=2 fail_timeout=30s;server 192.168.2.3:8080 weight=1 max_fails=2 fail_timeout=30s;server 192.168.2.4:8080 weight=1 max_fails=2 fail_timeout=30s;# 即在 30s 內(nèi)嘗試 2 次失敗即認(rèn)為主機(jī)不可用} 復(fù)制代碼

    負(fù)載均衡即將?請(qǐng)求/數(shù)據(jù)?輪詢分?jǐn)偟蕉鄠€(gè)服務(wù)器上執(zhí)行,負(fù)載均衡的關(guān)鍵在于?均勻。

    也可以通過?ip-hash?的方式,根據(jù)客戶端 ip 地址的 hash 值將請(qǐng)求分配給固定的某一個(gè)服務(wù)器處理。

    另外,服務(wù)器的硬件配置可能不同,配置好的服務(wù)器可以處理更多的請(qǐng)求,這時(shí)可以通過?weight參數(shù)來控制。

    Vue 相關(guān)文章輸出計(jì)劃

    最近總有朋友問我 Vue 相關(guān)的問題,因此接下來我會(huì)輸出 9 篇 Vue 相關(guān)的文章,希望對(duì)大家有一定的幫助。我會(huì)保持在 7 到 10 天更新一篇。

  • 【前端詞典】Vuex 注入 Vue 生命周期的過程
  • 【前端詞典】淺析 Vue 響應(yīng)式原理
  • 【前端詞典】新老 VNode 進(jìn)行 patch 的過程
  • 【前端詞典】如何開發(fā)功能組件并上傳 npm
  • 【前端詞典】從這幾個(gè)方面優(yōu)化你的 Vue 項(xiàng)目
  • 【前端詞典】從 Vue-Router 設(shè)計(jì)講前端路由發(fā)展
  • 【前端詞典】在項(xiàng)目中如何正確的使用 Webpack
  • 【前端詞典】Vue 服務(wù)端渲染
  • 【前端詞典】Axios 與 Fetch 該如何選擇
  • 建議你關(guān)注我的公眾號(hào),第一時(shí)間就可以接收最新的文章。

    ?

    ?

    如果你想加群交流,也可以添加有點(diǎn)智能的機(jī)器人,自動(dòng)拉你進(jìn)群:

    ?

    熱門文章傳送門

  • 【前端詞典】滾動(dòng)穿透問題的解決方案
  • 【前端詞典】5 種滾動(dòng)吸頂實(shí)現(xiàn)方式的比較(性能升級(jí)版)
  • 【前端詞典】提高幸福感的 9 個(gè) CSS 技巧
  • 【前端詞典】分享 8 個(gè)有趣且實(shí)用的 API
  • 【前端詞典】從輸入 URL 到展現(xiàn)涉及哪些緩存環(huán)節(jié)(非常詳細(xì))
  • 轉(zhuǎn)載于:https://www.cnblogs.com/tongongV/p/10957910.html

    總結(jié)

    以上是生活随笔為你收集整理的【前端词典】如何向老板解释反向代理的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。