亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 網(wǎng)站 > Nginx > 正文

一段萬能的nginx接口實現(xiàn)反向代理配置

2024-08-30 12:29:55
字體:
供稿:網(wǎng)友

1、什么是代理服務(wù)器

代理服務(wù)器,客戶機在發(fā)送請求時,不會直接發(fā)送給目的主機,而是先發(fā)送給代理服務(wù)器,代理服務(wù)接受客戶機請求之后,再向主機發(fā)出,并接收目的主機返回的數(shù)據(jù),存放在代理服務(wù)器的硬盤中,再發(fā)送給客戶機。

2、為什么要使用代理服務(wù)器

1)提高訪問速度  

由于目標主機返回的數(shù)據(jù)會存放在代理服務(wù)器的硬盤中,因此下一次客戶再訪問相同的站點數(shù)據(jù)時,會直接從代理服務(wù)器的硬盤中讀取,起到了緩存的作用,尤其對于熱門站點能明顯提高請求速度。

2)防火墻作用   

由于所有的客戶機請求都必須通過代理服務(wù)器訪問遠程站點,因此可在代理服務(wù)器上設(shè)限,過濾某些不安全信息。

3)通過代理服務(wù)器訪問不能訪問的目標站點 

互聯(lián)網(wǎng)上有許多開發(fā)的代理服務(wù)器,客戶機在訪問受限時,可通過不受限的代理服務(wù)器訪問目標站點,通俗說,我們使用的翻墻瀏覽器就是利用了代理服務(wù)器,雖然不能出國,但也可直接訪問外網(wǎng)。

反向代理 VS 正向代理

1、什么是正向代理?什么是反向代理?

正向代理,架設(shè)在客戶機與目標主機之間,只用于代理內(nèi)部網(wǎng)絡(luò)對Internet的連接請求,客戶機必須指定代理服務(wù)器,并將本來要直接發(fā)送到Web服務(wù)器上的http請求發(fā)送到代理服務(wù)器中。

反向代理服務(wù)器架設(shè)在服務(wù)器端,通過緩沖經(jīng)常被請求的頁面來緩解服務(wù)器的工作量,將客戶機請求轉(zhuǎn)發(fā)給內(nèi)部網(wǎng)絡(luò)上的目標服務(wù)器;并將從服務(wù)器上得到的結(jié)果返回給Internet上請求連接的客戶端,此時代理服務(wù)器與目標主機一起對外表現(xiàn)為一個服務(wù)器。

2、反向代理有哪些主要應(yīng)用?

現(xiàn)在許多大型web網(wǎng)站都用到反向代理。除了可以防止外網(wǎng)對內(nèi)網(wǎng)服務(wù)器的惡性攻擊、緩存以減少服務(wù)器的壓力和訪問安全控制之外,還可以進行負載均衡,將用戶請求分配給多個服務(wù)器。

作為前端開發(fā),每次調(diào)試接口,把代碼發(fā)到測試服務(wù)器,是很費時費事的一件事情。

為了提高效率,想到了nginx反向代理來解決這一問題。

接口地址:
test.com

訪問地址:
localhost

最核心的問題就是,登錄時,無法寫入cookie的問題,為了解決這個問題,走了不少彎路。

worker_processes 1;events {  worker_connections 1024;}http {  include    mime.types;  default_type application/octet-stream;  sendfile   on;  keepalive_timeout 10;  server {    listen 80;    server_name localhost;        location =/ {      add_header X-Frame-Options SAMEORIGIN;      root    D:/workspace/;      index index.html;    }    location ~* /.(html|htm|gif|jpg|jpeg|bmp|png|ico|txt|js|css|swf|woff|woff2|ttf|json|svg|cur|vue|otf|eot)$ {      charset   utf-8;      root    D:/workspace/;      expires   3d;    }        location = /socket/v2 {      proxy_pass  http://test.com;      proxy_redirect off;      proxy_http_version 1.1;      proxy_set_header Upgrade $http_upgrade;      proxy_set_header Connection "upgrade";      proxy_set_header Host test.com;      proxy_set_header X-Real-IP $remote_addr;      proxy_set_header REMOTE-HOST $remote_addr;      proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;      proxy_connect_timeout 30;      proxy_send_timeout 30;      proxy_read_timeout 60;      proxy_buffer_size 256k;      proxy_buffers 4 256k;    }        location / {      proxy_pass  http://test.com;      proxy_set_header Cookie $http_cookie;      proxy_cookie_domain test.com localhost;      proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;      proxy_set_header Host test.com;      proxy_set_header X-Real-IP $remote_addr;      proxy_set_header REMOTE-HOST $remote_addr;    }  }}

核心代碼在三行代碼上:

proxy_set_header Cookie $http_cookie;proxy_cookie_domain test.com localhost;proxy_set_header Host test.com;

具體解釋我也是一知半解:

  • 第一個是攜帶cookie,
  • 第二個設(shè)置cookie 的 domain
  • 第三個 設(shè)置真實的host

重要提示:以上3個的順序不要顛倒,否則代理失敗,我也不知道為什么。

如何在手機上調(diào)試呢?

手機上不可能直接訪問localhost,可以把手機和電腦連接到同一個網(wǎng)段,使用電腦的ip進行訪問。
但是這里只代理了localhost,并沒有代理電腦的ip

所以,需要把是上面的server{...}拷貝一份,只需要把里面的localhost全部改成你的電腦ip就可以了,最終代碼:

worker_processes 1;events {  worker_connections 1024;}http {  include    mime.types;  default_type application/octet-stream;  sendfile   on;  keepalive_timeout 10;  server {    listen 80;    server_name localhost;        location =/ {      add_header X-Frame-Options SAMEORIGIN;      root    D:/workspace/;      index index.html;    }    location ~* /.(html|htm|gif|jpg|jpeg|bmp|png|ico|txt|js|css|swf|woff|woff2|ttf|json|svg|cur|vue|otf|eot)$ {      charset   utf-8;      root    D:/workspace/;      expires   3d;    }        location = /socket/v2 {      proxy_pass  http://test.com;      proxy_redirect off;      proxy_http_version 1.1;      proxy_set_header Upgrade $http_upgrade;      proxy_set_header Connection "upgrade";      proxy_set_header Host test.com;      proxy_set_header X-Real-IP $remote_addr;      proxy_set_header REMOTE-HOST $remote_addr;      proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;      proxy_connect_timeout 30;      proxy_send_timeout 30;      proxy_read_timeout 60;      proxy_buffer_size 256k;      proxy_buffers 4 256k;    }        location / {      proxy_pass  http://test.com;      proxy_set_header Cookie $http_cookie;      proxy_cookie_domain test.com localhost;      proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;      proxy_set_header Host test.com;      proxy_set_header X-Real-IP $remote_addr;      proxy_set_header REMOTE-HOST $remote_addr;    }  }  server {    listen 8080;    server_name xx.xx.xx.xx;        location =/ {      add_header X-Frame-Options SAMEORIGIN;      root    D:/workspace/;      index index.html;    }    location ~* /.(html|htm|gif|jpg|jpeg|bmp|png|ico|txt|js|css|swf|woff|woff2|ttf|json|svg|cur|vue|otf|eot)$ {      charset   utf-8;      root    D:/workspace/;      expires   3d;    }        location = /socket/v2 {      proxy_pass  http://test.com;      proxy_redirect off;      proxy_http_version 1.1;      proxy_set_header Upgrade $http_upgrade;      proxy_set_header Connection "upgrade";      proxy_set_header Host test.com;      proxy_set_header X-Real-IP $remote_addr;      proxy_set_header REMOTE-HOST $remote_addr;      proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;      proxy_connect_timeout 30;      proxy_send_timeout 30;      proxy_read_timeout 60;      proxy_buffer_size 256k;      proxy_buffers 4 256k;    }        location / {      proxy_pass  http://test.com;      proxy_set_header Cookie $http_cookie;      proxy_cookie_domain test.com xx.xx.xx.xx;      proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;      proxy_set_header Host test.com;      proxy_set_header X-Real-IP $remote_addr;      proxy_set_header REMOTE-HOST $remote_addr;    }  }}

訪問方法:http://xx.xx.xx.xx:8080 即可

如果是打包工具生成增這個配置的話,可以用nodejs動態(tài)獲取你電腦的ip

function getIPAdress() {     var interfaces = require('os').networkInterfaces();     for (var devName in interfaces) {          var iface = interfaces[devName];          for (var i = 0; i < iface.length; i++) {               var alias = iface[i];               if (alias.family === 'IPv4' && alias.address !== '127.0.0.1' && !alias.internal) {                    return alias.address;      }          }     } }

所以,這里貼出來一個動態(tài)生成nginx.config的工具

function buildNginxConfig(config) {  function getIPAdress() {       var interfaces = require('os').networkInterfaces();       for (var devName in interfaces) {            var iface = interfaces[devName];            for (var i = 0; i < iface.length; i++) {                 var alias = iface[i];                 if (alias.family === 'IPv4' && alias.address !== '127.0.0.1' && !alias.internal) {                      return alias.address;                 }            }       }   }  var cwd = process.cwd().replace(////g, '/') + '/app';  var protocol = /https|443/.test(config.ip) ? 'https' : 'http';  var servers = [{    browserIp: 'localhost',    port: 80,    root: cwd,    serverIp: config.ip,    protocol: protocol,  }, {    browserIp: getIPAdress(),    port: 8080,    root: cwd,    serverIp: config.ip,    protocol: protocol,  }].map(function(item) {    return `  server {    listen ${item.port};    server_name ${item.browserIp};        location =/ {      add_header X-Frame-Options SAMEORIGIN;      root    ${item.root};      index index.html;    }    location ~* //.(html|htm|gif|jpg|jpeg|bmp|png|ico|txt|js|css|swf|woff|woff2|ttf|json|svg|cur|vue|otf|eot)$ {      charset   utf-8;      root    ${item.root};      expires   3d;    }        location = /socket/v2 {      proxy_pass  ${item.protocol}://${item.serverIp};      proxy_redirect off;      proxy_http_version 1.1;      proxy_set_header Upgrade $http_upgrade;      proxy_set_header Connection "upgrade";      proxy_set_header Host ${item.serverIp};      proxy_set_header X-Real-IP $remote_addr;      proxy_set_header REMOTE-HOST $remote_addr;      proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;      proxy_connect_timeout 30;      proxy_send_timeout 30;      proxy_read_timeout 60;      proxy_buffer_size 256k;      proxy_buffers 4 256k;    }        location / {      proxy_pass  ${item.protocol}://${item.serverIp};      proxy_set_header Cookie $http_cookie;      proxy_cookie_domain ${item.serverIp} ${item.browserIp};      proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;      proxy_set_header Host ${item.serverIp};      proxy_set_header X-Real-IP $remote_addr;      proxy_set_header REMOTE-HOST $remote_addr;    }  }`;  }).join('/n');  var str = `worker_processes 1;events {  worker_connections 1024;}http {  include    mime.types;  default_type application/octet-stream;  sendfile   on;  keepalive_timeout 10;  ${servers}}`;  return str;}exports = module.exports = buildNginxConfig;

有了這個萬能反向代理,可以隨心所欲的玩轉(zhuǎn)任何網(wǎng)站接口了

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持VEVB武林網(wǎng)。


注:相關(guān)教程知識閱讀請移步到服務(wù)器教程頻道。
發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
亚洲天堂黄色| jizzjizz在线观看| 美女被爆操网站| 久热re国产手机在线观看| 日本精品一区二区三区在线观看视频| 无套白嫩进入乌克兰美女| 天天影视色香欲综合网老头| 亚洲网在线观看| 欧美日韩免费网站| 91社影院在线观看| 久久先锋影音av鲁色资源网| 超级白嫩亚洲国产第一| a欧美人片人妖| 日韩国产精品一区二区三区| 99在线免费观看| 成人av中文字幕| 久久福利电影| 中文字幕免费国产精品| 香蕉97视频观看在线观看| 粉嫩粉嫩芽的虎白女18在线视频| 国产一级免费黄色片| 亚洲免费在线| 国产又爽又黄无码无遮挡在线观看| 色屁屁草草影院ccyy.com| 久久精品国产精品青草色艺| 亚洲精品无码专区| 日本老太婆做爰视频| 成人性做爰片免费视频| av老司机在线观看| 一区二区三区久久网| 激情综合网av| 精品免费国产二区三区| 91视频.com| 日本中文字幕久久看| 亚洲国产一区二区视频| 国产在线观看www| 欧美一级裸体视频| 大片在线观看网站免费收看| 欧美一级视频精品观看| 国产高清精品网站| 天天做综合网| 免费人成短视频在线观看网站| 亚洲精品成a人| 日本精品一区二区三区四区| 一级黄色片在线看| 精品视频一区二区在线观看| 国模视频一区二区三区| 国产综合视频在线观看| 中文字幕日本最新乱码视频| 欧美福利视频网站| 国产又黄又粗又猛又爽| 人妻精油按摩bd高清中文字幕| 天天操天天搞| 国产福利小视频在线| 中文字幕一区日韩电影| 日本网站免费观看| 亚洲成人偷拍| 亚洲小说图片视频| 最新国产在线观看| 国产人与禽zoz0性伦| 日韩女同互慰一区二区| 免费人成视频在线| 欧洲vs亚洲vs国产| 乱小说综合网站| 亚洲五码在线| 蜜桃视频成人| 国产亚洲精aa在线看| 欧美美女在线观看| 日韩精品一区在线观看| 久久久久亚洲av无码a片| 欧美精品一区二区三区涩爱蜜| 老司机亚洲精品| eeuss鲁片一区二区三区| 女同另类激情重口| 欧美xnxx| 日韩电视剧在线观看免费网站| 在线播放日本| 四虎在线视频免费观看| 精品激情国产视频| 欧美日本一区二区在线观看| 先锋a资源在线看亚洲| 国产主播喷水一区二区| 无遮挡亚洲一区| 米仓穗香在线观看| 91黄色免费观看| 电影午夜精品一区二区三区| 2017亚洲男人天堂| 午夜国产福利在线| 国产无遮挡一区二区三区毛片日本| 青青在线视频免费观看| 第四色男人最爱上成人网| 秋霞午夜在线观看| 91亚洲精华国产精华精华液| 欧美成人一二三| 日本网站免费在线观看| 91国内产香蕉| 精品电影在线观看| 日产精品久久久一区二区福利| 国产男男chinese网站| 国产丝袜护土调教在线视频| 999精品在线观看| 在线日韩中文字幕| 一区二区欧美日韩视频| 劲爆欧美第一页| 国产视频2区| 国产日产欧美一区二区三区| 精品美女视频在线观看免费软件| 91精品麻豆| 视频成人永久免费视频| 午夜精品一区二区三区在线视| a级在线免费观看| 最新国产の精品合集bt伙计| 91女人18毛片水多国产| 青青草国产免费一区二区下载| 国产电影一区二区在线观看| 欧美一区网站| 超碰96在线| 欧洲av一区二区嗯嗯嗯啊| 丝袜亚洲精品中文字幕一区| 亚洲伊人精品酒店| 成人爽a毛片免费啪啪红桃视频| 91久久久久久白丝白浆欲热蜜臀| 久久精品无码中文字幕| 高清孕妇孕交╳╳交| 精品国产乱码久久久久久牛牛| 免费的黄网站在线观看| 中文字幕1区2区| 天天综合久久| 久久精品一区二区三| 日本成人伦理电影| 中文字幕在线一区二区三区| 精品亚洲a∨| 91欧美激情另类亚洲| 日本欧美黄色| 全部孕妇毛片丰满孕妇孕| 麻豆蜜桃在线| 免费看久久久| 一区二区三区精品| 国产激情无套内精对白视频| 国产乱视频在线观看播放| 亚洲激情成人在线| 欧美精品久久久久久久免费| 超碰人人爱人人| 精品成人免费一区二区在线播放| 中文在线观看免费视频| 日韩亚洲综合在线| 在线亚洲午夜片av大片| 中文字幕第一页在线视频| 精品素人av| 久久久久久久久久亚洲| 欧美极品少妇xxxxⅹ高跟鞋| 色噜噜狠狠色综合网图区| 国产精品久久久久影院色老大| 免费一区二区三区视频导航| 国产精品jizz视频| 国产真实乱子伦| 另类一区二区三区| 欧美videosex性欧美黑吊| 国产欧美亚洲精品a| 一区二区精品伦理...| 国产精品精品一区二区三区午夜版| 曰批又黄又爽免费视频| 中文字幕久久网| 久久久久久久久久久久电影| 精品视频—区二区三区免费| 日本少妇全体裸体洗澡| 成人爽a毛片一区二区免费| 99久久99视频只有精品| www.av亚洲| 91麻豆精品91久久久久同性| 色一区在线观看| 亚洲人的天堂男人爽爽爽| 欧美成人艳星乳罩| 欧美这里只有精品| 伊人蜜桃色噜噜激情综合| 国产视频欧美| 亚洲人成亚洲人成在线观看| 国产一区二区三区播放| 日韩电影中文字幕在线| 欧美日韩精品久久| 色噜噜狠狠色综合网| youjizzxxxx18| 黄色一级一级片| 国产精品视频免费观看www| 波多野结衣av在线免费观看| 丝袜美腿玉足3d专区一区| 日韩欧美在线视频观看| 色婷婷av一区二区三区大白胸| 国产综合色激情| 色一情一伦一子一伦一区| 黄www在线观看| 中文字幕在线播放一区| 888久久久| 免费黄色在线视频网站| 麻豆精品免费视频入口| 亚洲综合自拍偷拍| 欧美中文字幕在线观看视频| 日韩av免费网址| 精品香蕉在线观看视频一| 国产精品亚洲аv天堂网| 狠狠干狠狠操视频| 日韩精品成人免费观看视频| 国产精品欧美在线| 国产69精品久久app免费版| 国产乱子伦视频一区二区三区| 亚洲一区导航| 久久婷婷国产麻豆91| 天天操夜夜逼| 成人久久网站| 国产精品99一区二区三区| 亚洲高清毛片一区二区| 香蕉视频在线观看网站| 国产一区二区三区高清在线观看| 国产黄色片在线观看| 亚洲国产精品自拍视频| 天天综合中文字幕| 最新在线黄色网址| 久久色.com| 日本精品二区| 国产女主播在线播放| 中文字幕一区二区三区久久网站| 好吊日免费视频| 国产野外作爱视频播放| 大胆av不用播放器在线播放| 久久综合九色综合欧美亚洲| h视频在线观看免费完整版| 日韩在线观看你懂的| 国产卡一卡二在线| 8x拔播拔播x8国产精品| 亚洲综合在线视频| 欧美图片一区二区| 怡红院成人在线| 国产免费无遮挡| 人人干人人看| 婷婷五月色综合| 成人免费黄色av| 国产精品福利一区二区三区| 欧美视频一二区| 你微笑时很美电视剧整集高清不卡| 北条麻妃视频在线| 日日夜夜精品免费| 国产特黄级aaaaa片免| 理论不卡电影大全神| 免费视频一区| 奇门遁甲1982国语版免费观看高清| 国产精品国产精品国产专区| 欧美一级高清免费| 国产综合精品一区二区三区| 亚洲无毛电影| 中文字幕成人在线视频| 国产免费av电影| 精品久久久久av| 国产精品6699| 蜜臀久久精品| 狠狠久久综合婷婷不卡| 久久99久久99精品免费看小说| 国内揄拍国内精品少妇国语| 黄色一级免费大片| 91久久精品日日躁夜夜躁欧美| 麻豆国产入口在线观看免费| 欧美日韩中文在线| 国产一线二线在线观看| 99re免费99re在线视频手机版| 国产精品亚洲欧美| 大胆国模一区二区三区| 久久精品老司机| aaa大片免费观看| 国产视频911| 丁香花高清电影在线观看完整版| 人与动物性xxxx| 丰满岳妇乱一区二区三区| 久久精品国产精品亚洲综合| 国语自产精品视频在免费| 精品少妇一区二区三区免费观| 国产精品扒开腿做爽爽| www.欧美激情.com| 日本福利视频在线观看| 91国内精品| 日韩大胆成人| 国产精品美女午夜爽爽| 不卡高清视频专区| 天堂va久久久噜噜噜久久va| 成年人网站av| 亚洲欧洲av一区二区三区久久| 91久久精品午夜一区二区| 四虎影视精品成人| 亚洲综合爱爱久久网| 亚洲成人激情视频| 日韩日韩日韩日韩| 青青草原在线免费观看| 成人在线观看网站| 国产欧美久久一区二区三区| 中文幕无线码中文字蜜桃| 国产精品国产三级国产专区53| 欧美亚洲综合色| 精品久久在线播放| 欧美一区二区三区另类| 欧美激情视频播放| 日韩中文字幕视频在线观看| 久久五月天小说| 国产无码精品视频| 日韩精品在线一区二区| av有声小说一区二区三区| 国模少妇一区二区三区| 亚洲国产一成人久久精品| 在线一区电影| 99久久亚洲精品日本无码| 亚洲偷欧美偷国内偷| 欧美一级理论性理论a| 美国一区二区| 全部免费毛片在线播放网站| 奇米色在线视频| 久久电影网电视剧免费观看| 好男人www在线视频| 亚洲一区二区视频在线观看| 免费av网站观看| 亚洲国产一区二区在线观看| 精品福利av| 日韩欧美猛交xxxxx无码| www污网站在线观看| 久久精品国产第一区二区三区| 手机在线免费看av| 欧美激情福利视频在线观看免费| 国产精品涩涩涩视频网站| 欧美男人的天堂一二区| 精品免费在线观看| 俺去啦在线观看| 不卡视频一二三|