nginx反向代理解决跨域问题
现在随着前端技术的发展,前端渲染模板越来成熟,前后端的分离就变得越来越普遍了。其中一个很目标的问题就是跨域问题,这里就不展开跨域问题了。以前常见的解决办法是在返回的header部分增加”‘Access-Control-Allow-*”系列header来解决问题。以前我也写过一篇类似的文章《ajax跨域解决方案-Cross Origin Resource Sharing》,感兴趣的话可以去看看一下。今天要说的是利用nginx的反向代理来解决这个问题。
现在我们有2个站点,front.aaa.com和api.aaa.com。假设这里我们2个站点都用nginx搭建,front.aaa.com的nginx配置文件为front.conf,api.aaa.com的nginx的配置文件为api.conf。当front站点的页面ajax访问api站点的时候就会起因这个跨域问题。我们在front站点配置1个针对api的反向代理,配置如下:
server {
....
location /api/ {
rewrite ^/api/(.*) /$1 break;
proxy_pass http://api.aaa.com;
}
....
}
如此一来所有访问api的接口我们可以同构http://front.aaa.com/api/{realApi}来实现对后端接口的访问。
近期评论