解决方法很多,大类一般分为 前端解决,后端解决,运维解决。
最简单方法即运维解决,配置nginx反向代理解决 同源问题。
假如 前端启动在 11服务器上, 后端启动在 22服务器上,
利用nginx反向代理将两台服务器代理到一台同ip同端口号的机器即解决跨域问题。
比如前端打成静态包放在11服务器,nginx直接在11服务器上配置即可解决,如下
server {
listen 8888;
server_name localhost;
location /qianduan/ {
root /usr/local/nginx/;
try_files $uri $uri/ /index.html;
}
location ^~/houduan/ {
proxy_pass http://192.168.0.22:8111/;
proxy_set_header Host $http_host; #后台可以获取到完整的ip+端口号
proxy_set_header X-Real-IP $remote_addr; #后台可以获取到用户访问的真实ip地址
}
}
前端通过访问 http://192.168.0.11:8888/qianduan 访问,后端通过访问 http://192.168.0.22:8888/houduan 访问