web 领域开发中,经常采用前后端分离模式。这种模式下,前端和后端分别是独立的 web 应用程序,例如:后端是 Java 程序,前端是 React 或 Vue 应用。
各自独立的 web app 在互相访问时,势必存在跨域问题。解决跨域问题一般有两种思路:
在后端服务器设置 HTTP 响应头,把你需要运行访问的域名加入加入 Access-Control-Allow-Origin 中。jsonp
把后端根据请求,构造 json 数据,并返回,前端用 jsonp 跨域。这两种思路,本文不展开讨论。需要说明的是,nginx 根据第一种思路,也提供了一种解决跨域的解决方案。
宝塔配置方法:打开网站设置-配置文件-在合适地地方加入以下配置
add_header 'Access-Control-Allow-Origin' '$http_origin' ;
add_header 'Access-Control-Allow-Credentials' 'true' ;
add_header 'Access-Control-Allow-Methods' 'PUT,POST,GET,DELETE,OPTIONS' ;
add_header 'Access-Control-Allow-Headers' 'Content-Type,Content-Length,Authorization,Accept,X-Requested-With' ;
大功告成,跨域问题就这么解决了,相对于前端解决跨域,这个方法就简单快捷多了