Nginx代理服务器-根据URL中的路径映射到单独的网站

时间:2020-01-24 12:15:18

标签: nginx nginx-reverse-proxy

我正在尝试设置代理服务器,以便

proxy-server.com/app1  -->  website1.com
proxy-server.com/app2  -->  website2.com
  1. 不应重定向到实际的后端应用程序。用户只能在URL中看到proxy-server.com/app[1/2]
  2. 所有静态资源均应加载正常。例如,来自app2的资源/js/sample.js应该从位置/app2/js/sample.js请求
  3. 当我执行操作时,例如提交表单或导航到app2中的另一个页面,请求应放在/app2之前,以便将其代理到正确的地址
http {
  upstream webapp1 {
      server website1.com:443;
    }

    upstream webapp2 {
      server website2.com:443;
    }


     server {
          listen 80;
          listen 443 ssl;
          server_name   proxy-server.com;

          # certificate section

          location /app1 {
            proxy_pass https://webapp1/;
            proxy_set_header Host            website1.com;
          }

          location /app2 {
            proxy_pass https://webapp2/;
            proxy_set_header Host            website1.com;
          }
     }
}

该配置只修复了点1,但是我正在努力寻找上述其他两个点的解决方案。我正在寻找一个干净的解决方案,只是提一下,我将尝试避免使用if语句或sub_filter模块:)

0 个答案:

没有答案
相关问题