nginx配置跨域代理,后台api没有后缀的问题

nginx配置跨域代理,后台api没有后缀的问题

server {
        listen       6102;
        server_name  localhost;
        location ^~/{
           proxy_pass http://36.155.71.126:8383;
           proxy_set_header Host $http_host;
            proxy_set_header X-Real-IP $remote_addr;
            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
            proxy_set_header X-Forwarded-Proto $scheme;
        }
         location / {
            root /var/wwwvue/month_H5/dist/;
            try_files $uri $uri/ /index.html;
               }

}

一般~、后面都会有api后缀什么的,但是这次没有,
这样配置nginx又会报错两个/

阅读 4.1k
2 个回答

思路如下:

  1. 前端请求的时候带上一个虚拟的路径/api/
  2. nginx中拦截/api/下的url,改写地址去除/api/继续转发到http://36.155.71.126:8383

两个后端(静态和代理)一定要能从路径上区分才行,否则nginx也没有办法区分应转给谁啊?

推荐问题