账号密码登录
微信安全登录
微信扫描二维码登录

登录后绑定QQ、微信即可实现信息互通

手机验证码登录
找回密码返回
邮箱找回 手机找回
注册账号返回
其他登录方式
分享
  • 收藏
    X
    nginx如何用一个server代理多个ip
    55
    0
    server {
            listen       8666;
            server_name  localhost;
    
            #charset koi8-r;
    
            #access_log  logs/host.access.log  main;
    
            location / {
                root   html;
                index  index.html index.htm;
            }
    
        location /Serv/Api/AccessToken {
            proxy_pass  http://192.168.4.20:8771 ;
        }
    
        location /Serv/Api/OfferSub {
            proxy_pass  http://10.3.113.20:8771 ;
        }
    }

    nginx同一个前端页面需要跨域访问两个ip地址的接口,nginx可以这样代理配置吗

    现在需求就是同一个网页需要请求不同ip地址的接口地址,第一个可以正常代理,实现跨域,第二个不行,网上查了可以配置多个server,但是那样的话就不可以配置同样的端口,无法实现一个端口代理访问多个ip的接口

    3
    打赏
    收藏
    点击回答
        全部回答
    • 0
    • ザ@忘卜了ㄊ伱﹄ 普通会员 1楼

      在Nginx中,可以通过定义多个server块来代理多个IP地址。每个server块都代表一个独立的IP地址。

      以下是一个基本的示例,它将代理所有来自指定IP地址的请求:

      ```nginx http { upstream backend { server 192.168.1.1:80; server 192.168.1.2:80; }

      server {
          listen 80;
          server_name example.com;
      
          location / {
              proxy_pass http://backend;
          }
      }
      

      } ```

      在这个示例中,upstream backend定义了一个名为backend的上游服务器,该服务器将处理来自所有example.comIP地址的请求。然后,server块定义了一个名为example.com的服务器,该服务器将直接处理来自example.com的请求。

      请注意,你需要将192.168.1.1192.168.1.2替换为你的实际IP地址。此外,如果你想要处理来自不同IP地址的请求,你可以定义多个upstream backend

      如果你想处理来自不同IP地址的请求,你可以定义多个server块,并为每个server块指定一个upstream backend。例如:

      ```nginx server { listen 80; server_name example.com;

      location / {
          proxy_pass http://backend;
      }
      
      server {
          listen 80;
          server_name example2.com;
      
          location / {
              proxy_pass http://backend;
          }
      }
      

      } ```

      在这个示例中,有两个server块,每个块都将直接处理来自example.comexample2.com的请求。

    更多回答
    网站公告
    扫一扫访问手机版
    • 回到顶部
    • 回到顶部