全网整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:400-708-3566

nginx实现请求转发

反向代理适用于很多场合,负载均衡是最普遍的用法。

nginx 作为目前最流行的web服务器之一,可以很方便地实现反向代理。

nginx 反向代理官方文档: NGINX REVERSE PROXY

当在一台主机上部署了多个不同的web服务器,并且需要能在80端口同时访问这些web服务器时,可以使用 nginx 的反向代理功能: 用 nginx 在80端口监听所有请求,并依据转发规则(比较常见的是以 URI 来转发)转发到对应的web服务器上。

例如有 webmail , webcom 以及 webdefault 三个服务器分别运行在 portmail , portcom , portdefault 端口,要实现从80端口同时访问这三个web服务器,则可以在80端口运行 nginx, 然后将 /mail 下的请求转发到 webmail 服务器, 将 /com下的请求转发到 webcom 服务器, 将其他所有请求转发到 webdefault 服务器。

假设服务器域名为example.com,则对应的 nginx http配置如下:

http {
 server {
   server_name example.com;
 
   location /mail/ {
     proxy_pass http://example.com:protmail/;
   }
 
   location /com/ {
     proxy_pass http://example.com:portcom/main/;
   }
 
   location / {
     proxy_pass http://example.com:portdefault;
   }
 }
}
 

以上的配置会按以下规则转发请求( GET 和 POST 请求都会转发):

将 http://example.com/mail/ 下的请求转发到 http://example.com:portmail/
将 http://example.com/com/ 下的请求转发到 http://example.com:portcom/main/
将其它所有请求转发到 http://example.com:portdefault/

需要注意的是,在以上的配置中,webdefault 的代理服务器设置是没有指定URI的,而 webmail 和 webcom 的代理服务器设置是指定了URI的(分别为 / 和 /main/)。

如果代理服务器地址中是带有URI的,此URI会替换掉 location 所匹配的URI部分。

而如果代理服务器地址中是不带有URI的,则会用完整的请求URL来转发到代理服务器。

官方文档描述:

If the URI is specified along with the address, it replaces the part of the request URI that matches the location parameter.
If the address is specified without a URI, or it is not possible to determine the part of URI to be replaced, the full request URI is passed (possibly, modified).

以上配置的转发示例:

http://example.com/mail/index.html -> http://example.com:portmail/index.html
http://example.com/com/index.html -> http://example.com:portcom/main/index.html
http://example.com/mail/static/a.jpg -> http://example.com:portmail/static/a.jpg
http://example.com/com/static/b.css -> http://example.com:portcom/main/static/b.css
http://example.com/other/index.htm -> http://example.com:portdefault/other/index.htm


# nginx  # 请求转发  # 转发post请求  # nginx转发https请求  # nginx做代理转发前端请求到后端的代码示例  # 使用nginx如何实现请求转发的功能  # nginx的请求转发配置过程  # Nginx请求转发配置指南  # 详解Nginx 利用代理转发请求示例  # nginx配置请求转发不生效的实现  # 代理服务器  # 的是  # 文档  # 多个  # 是指  # 适用于  # 能在  # 可以使用  # 分别为  # 则可  # 定了  # 这三个  # 很方便  # 则会  # 最流行  # 用完  # 需要注意  # 则对  # 一台主机  # 器上 


相关文章: 建站之星五站合一营销型网站搭建攻略,流量入口全覆盖优化指南  家族网站制作贴纸教程视频,用豆子做粘帖画怎么制作?  C#如何序列化对象为XML XmlSerializer用法  如何用免费手机建站系统零基础打造专业网站?  seo网站制作优化,网站SEO优化步骤有哪些?  网站制作免费,什么网站能看正片电影?  建站主机如何选?性能与价格怎样平衡?  建站168自助建站系统:快速模板定制与SEO优化指南  定制建站流程步骤详解:一站式方案设计与开发指南  网站制作公司,橙子建站是合法的吗?  如何破解联通资金短缺导致的基站建设难题?  如何通过虚拟主机快速搭建个人网站?  宝塔建站教程:一键部署配置流程与SEO优化实战指南  建站之星后台密码遗忘?如何快速找回?  网站制作的软件有哪些,制作微信公众号除了秀米还有哪些比较好用的平台?  北京制作网站的公司,北京铁路集团官方网站?  c# 服务器GC和工作站GC的区别和设置  如何通过万网虚拟主机快速搭建网站?  建站之星2.7模板:企业网站建设与h5定制设计专题  制作销售网站教学视频,销售网站有哪些?  C#怎么创建控制台应用 C# Console App项目创建方法  企业在线网站设计制作流程,想建设一个属于自己的企业网站,该如何去做?  关于BootStrap modal 在IOS9中不能弹出的解决方法(IOS 9 bootstrap modal ios 9 noticework)  高防服务器租用如何选择配置与防御等级?  ui设计制作网站有哪些,手机UI设计网址吗?  弹幕视频网站制作教程下载,弹幕视频网站是什么意思?  移动端手机网站制作软件,掌上时代,移动端网站的谷歌SEO该如何做?  建站之星ASP如何实现CMS高效搭建与安全管理?  制作假网页,招聘网的薪资待遇,会有靠谱的吗?一面试又各种折扣?  如何制作一个表白网站视频,关于勇敢表白的小标题?    清单制作人网站有哪些,近日“兴风作浪的姑奶奶”引起很多人的关注这是什么事情?  单页制作网站有哪些,朋友给我发了一个单页网站,我应该怎么修改才能把他变成自己的呢,请求高手指点迷津?  一键制作网站软件下载安装,一键自动采集网页文档制作步骤?  如何选择靠谱的建站公司加盟品牌?  Swift中swift中的switch 语句  胶州企业网站制作公司,青岛石头网络科技有限公司怎么样?  建站之星如何取消后台验证码生成?  如何在Windows环境下新建FTP站点并设置权限?  专业的网站制作设计是什么,如何制作一个企业网站,建设网站的基本步骤有哪些?  官网建站费用明细查询_企业建站套餐价格及收费标准指南  手机网站制作与建设方案,手机网站如何建设?  赚钱网站制作软件,建一个网站怎样才能赚钱?是如何盈利的?  全景视频制作网站有哪些,全景图怎么做成网页?  如何通过IIS搭建网站并配置访问权限?  如何通过建站之星自助学习解决操作问题?  Python文件管理规范_工程实践说明【指导】  网站插件制作软件免费下载,网页视频怎么下到本地插件?  建站之星在线版空间:自助建站+智能模板一键生成方案  魔毅自助建站系统:模板定制与SEO优化一键生成指南 

您的项目需求

*请认真填写需求信息,我们会在24小时内与您取得联系。