我们在项目中,可能会遇到跨域问题,然后有些问题nginx可以解决,有些不可以解决。
在不可以解决的情况下 只能通过 前端或者后端添加代码来解决。(但是如果前后端配置跨域则nginx不能配置。否则会报错重复问题)如下图所示:
原因:因为Nginx只能对静态类似HTML这种做跨域才会生效。(Nginx里nginx.conf设置的跨域是对整个生效)
所以如果Nginx设置跨域而无法生效就只能从后端中加代码设置跨域来解决。(但是后端如果加了我们则不能直接再在nginx里设置跨域因为会报错重复,但是如果我们不加跨域则会引起别的接口的调用问题)
后端设置跨域后 需要做的事情:
必须做好隔离 从网关开始就要完全隔离于其他所有的
1.配置一个新的域名来做后端不需要跨域的接口
2.做好网关配置 重新下载证书(SSL)
3.在nginx的全局配置中 nginx.conf里不配置跨域
4.因为后端对需要跨域而nginx设置不了的已经配置了跨域
5.我们需要本身nginx需要的跨域的域名在子配置文件中加跨域设置:
.
-*/9*