Nginx部署前后端项目时的跨域问题

 我来答
白露饮尘霜17
2022-06-20 · TA获得超过1.2万个赞
知道大有可为答主
回答量:6865
采纳率:100%
帮助的人:38.1万
展开全部

最近在准备一个小项目来着,使用tomcat部署后端的SpringBoot项目,然后使用Nginx部署前端界面并转发后端请求到相应的tomcat集群时,发生了跨域问题,解决过程欲仙欲死,特在此记录一下。

Nginx跨域配置方法一

严格说来,这种方式并不算是跨域请求,因为这种配置要求后端请求的url必须为 http://shop.mk-shop.com/mk-shop-api/xxxx 的形式,也就是说前端项目的请求地址必须进行更改为和客户端页面访问时的url地址一样,这样貌似也就没有跨域问题了。如果前端项目不同模块的请求地址不一样,则都需要进行更改。
Nginx跨域配置方法二

注意: api.mk-shop.com 是后端api的请求前缀,也就是客户端异步加载时的请求地址,以我的项目的后端请求地址为例:

SpringBoot后端处理跨域时可以配置过滤器来实现

注意: 使用过程中,新版本的springboot可能会报错不允许在setAllowedOrigins包含 * ,此时需要使用setAllowedOriginPatterns代替。

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式