Nginx根据二级路径/域名映射不同的服务器-(Nginx配置详解一)

原创 2018年04月17日 10:31:36

1. 根据路径映射不同的服务器,比如通过同一域名下二级路径规则做映射,解决一个域名下实现多服务器访问,来达到路径规则模式下反向代理功能

##通过以下配置来达到通过二级路径分别访问支付服务和订单服务节点服务器
#路径映射
server {
    listen 80;
    server_name superspeed.domain.com;
    #通过访问二级目录payment来访问支付服务器
    location /payment/ {
        #后面的斜杠是一个关键,没有斜杠的话就会传递paymentServ到后端节点导致404
        proxy_pass       http://paymentServ/;
        proxy_redirect   off;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    }
    #通过访问二级目录order来访问订单服务服务器
    location /order/ {
        proxy_pass        http://orderServ/;
        proxy_redirect    off;
        proxy_set_header  Host  $host;
        proxy_set_header  X-Real-IP  $remote_addr;
        proxy_set_header  X-Forwarded-For $proxy_add_x_forwarded_for;
    }
    #其他路径直接返回403页面
    location / {
        return 403;
    }
}

#负载均衡节点配置
upstream paymentServ {
     server 192.168.1.1;
     server 192.168.1.2;
     ip_hash;
 }
upstream orderServ {
     server 192.168.1.3;
     server 192.168.1.4;
     ip_hash;
}

2. 通过不同的二级域名映射到不同的服务器

#二级域名域名映射
server {
   listen 80;
   server_name payment.domain.com;
   location / {
      proxy_pass        http://paymentServ/;
      proxy_redirect    off;
      proxy_set_header  Host  $host;
      proxy_set_header  X-Real-IP  $remote_addr;
      proxy_set_header  X-Forwarded-For $proxy_add_x_forwarded_for;
  }
}
#二级域名域名映射,配置订单虚拟机映射
server {
   listen 80;
   server_name order.domain.com;
   location / {
      proxy_pass        http://orderServ/;
      proxy_redirect    off;
      proxy_set_header  Host  $host;
      proxy_set_header  X-Real-IP  $remote_addr;
      proxy_set_header  X-Forwarded-For $proxy_add_x_forwarded_for;
  }
}

#负载均衡节点配置
upstream paymentServ {
     server 192.168.1.1;
     server 192.168.1.2;
     ip_hash;
 }
upstream orderServ {
     server 192.168.1.3;
     server 192.168.1.4;
     ip_hash;
}

这些只是一些简单的配置,后续会把实际生产中常用的配置整理出来,本人技术有限,如果文章内容有不对的地方,请指正。

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/a525390802/article/details/79971132

VML折线图(二)

的第1,2,3,4,5个元素的计算结果-->                                                                             ...
  • FlySpace
  • FlySpace
  • 2003-06-20 09:26:00
  • 1737

Nginx通过二级目录(路径)映射不同的反向代理,规避IP+端口访问

①、同一个域名需要反向代理到前台和后台(不同机器和端口); ②、需要采用IP+端口的模式,嵌入到APP作为DNS污染后的备选方案。 server {         listen 8...
  • maliao1123
  • maliao1123
  • 2016-12-28 15:34:35
  • 790

nginx 不同目录静态资源位置 通过二级目录(路径)映射不同的反向代理

静态资源 location ^~ /console/ {     root /console;     expires  30d; } location ~* \.(gif|jpg|jpeg|bm...
  • a1161638319
  • a1161638319
  • 2017-11-02 20:43:15
  • 1121

Nginx多域名映射到对应不同tomcat的nginx.conf配置详解

下面是一个完整的nginx.conf的配置信息: user nginx; worker_processes  1; error_log /var/log/nginx/error.log; #error...
  • LiuXingSiYe
  • LiuXingSiYe
  • 2015-11-20 09:33:16
  • 3263

Nginx配置二级目录反向代理本机不同端口

前序最近在家里的服务器上装了一大堆的服务器软件,大多数都需要Web网站访问的,比如:Gitlab、Apache、Jenkins等等。然而又因为是不同的应用,需要占用不同的端口,每次访问起来都需要在IP...
  • lusyoe
  • lusyoe
  • 2016-10-25 23:07:16
  • 9694

nginx 实现多域名转发到web服务不同路径

项目背景 我们有个项目前端是用vue 写的,node 起的web服务,中转api到后台接口。 但是项目下有多个平台,可以理解成多个端,每个端都有自己的node web服务,绑定不同端口,如3001 3...
  • starwmx520
  • starwmx520
  • 2016-11-26 17:53:28
  • 6025

Nginx学习---用不同域名访问同一台机器的不同项目

Nginx是一款面向性能设计的HTTP服务器,相较于Apache、lighttpd具有占有内存少,稳定性高等优势。与旧版本(...
  • ergouge
  • ergouge
  • 2016-03-09 19:33:20
  • 8723

Nginx子路径到端口映射

有时候需要使用nginx来将子路径映射到某个特殊端口上,例如下面的场景。 nginx所在服务器的域名为www.service.com,监听在 此服务器上还有一个...
  • yzhou86
  • yzhou86
  • 2014-11-18 15:17:50
  • 3769

Linux上利用nginx域名转发

环境:Linux CentOS6.5  Tomcat 7 nginx-1.10.1-1.el6.ngx.x86_64 描述: 公司在阿里云有一台主机,里面部署了很多的应用程序,只有一个Tomcat...
  • hzw2312
  • hzw2312
  • 2016-06-30 14:57:18
  • 12771

nginx配置子域名跳转到后端请求

nginx配置子域名跳转到后端请求
  • newtelcom
  • newtelcom
  • 2016-05-19 11:27:29
  • 5876
收藏助手
不良信息举报
您举报文章:Nginx根据二级路径/域名映射不同的服务器-(Nginx配置详解一)
举报原因:
原因补充:

(最多只允许输入30个字)