如何利用Nginx处理Vue开发环境的跨域问题

1. 需求

本地测试域名与线上域名相同,以便正确传递 cookie 和进行 sso 测试。

注:由于 sso 登录后,相关 cookie 被加在四级域名上,因而需要做到本地测试域名和线上接口域名相同。

2. 方案

配置 host 文件使线上域名指向 localhost:

127.0.0.1 product.xxx.xxx.com

配置 nginx 进行对应转发:

server {   listen    80;   listen    [::]:80;   server_name ${product.xxx.xxx.com};    location /api {     proxy_pass https://${ip.ip.ip.ip};     proxy_set_header host $host;   }    location / {     proxy_pass http://localhost:8080;     proxy_set_header host $host;   }   }

配置 vue.config.js 以免出现 invalid host header 报错:

{   devserver: {     disablehostcheck: true   } }

© 版权声明
THE END
喜欢就支持一下吧
点赞9 分享