神剑山庄资源网 Design By www.hcban.com
前后端分离,使用nginx解决跨域问题
前端:vue.js+nodejs+webpack
后台:SpringBoot
反向代理服务器:nginx
思想:将前端代码打包,让nginx指向静态资源,nginx对后台请求进行转发。
1、将前端代码打包:
npm run build
会生成一个dist文件夹。包含一个index.html文件和一个static文件夹,路径以我本地为例:
/Users/xxx/ideaProjects/webtest/dist
2、打开
/usr/local/etc/nginx目录下的nginx.conf,在server中添加如下:
listen 80; #原为8080,避免冲突,更改为80 server_name localhost; #charset koi8-r; #access_log logs/host.access.log main; location / { root /Users/xxx/ideaProjects/webtest/dist; index index.html; # 此处用于处理 Vue、Angular、React 使用H5 的 History时 重写的问题 if (!-e $request_filename) { rewrite ^(.*) /index.html last; break; } } # 代理服务端接口 location /api/ { proxy_pass http://localhost:8080/;# 代理接口地址 }
测试
前端发送请求:http://localhost/test ,vue-router将其重定向为http://localhost/api/demo/1,实际访问是http://localhost:8080/demo/1。
直接向后台发送请求:访问http://localhost/api/demo/1,实际访问是:http://localhost:8080/demo/1
内容扩展思考:
1).
# 代理服务端接口
location /api/ { proxy_pass http://localhost:8080/;# 代理接口地址 }
代理接口地址只到8080,那么他会自动将后台项目的名称加上??? 比如接口是http://148.70.110.87:8080/项目名称/方法名称 。。。
2).js 中是这样请求的 ,nginx是按照您上面的配置,但是请求出错http://148.70.110.87/api/index2 404 (Not Found)
axios.post('/api/index2') .then( (response) =>{ console.log(response); }) .catch( (error)=> { console.log(error); });
3).您的第三个步骤,测试,实在看不懂要是能有相关的代码就好了
标签:
nginx,跨域
神剑山庄资源网 Design By www.hcban.com
神剑山庄资源网
免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件!
如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
神剑山庄资源网 Design By www.hcban.com
暂无nginx解决跨域问题的实例方法的评论...
更新日志
2024年11月13日
2024年11月13日
- 张艾嘉1997《滚石24K》24K金碟珍藏版系列[低速原抓WAV+CUE][1.1G]
- 宝可梦大集结开服有哪些免费时装获取 大集结免费时装获取大全
- 宝可梦大集结国服新手宝可梦怎么选 新手公测宝可梦推荐
- 宝可梦大集结国服公测福利获取方法大全 大集结开服福利有哪些
- AminaFigarova-SuiteForAfrica(2024)[24-96]FLAC
- 黑鸭子VS绿色森林2007-男女情歌对唱[首版][WAV+CUE]
- 群星《半个月亮爬上来》[DTS-WAV]
- 日本大雷少女COS赏
- 《怪猎荒野》PS5Pro性能表现一般 外媒:会有专门优化
- 《碟中谍8》首支预告公布!阿汤哥手扒飞机惊心动魄
- 孙露《忘不了》1:1黄金母盘直刻珍藏版[低速原抓WAV分轨][1G]
- 试音宝典《试机二十六号》K2HD母盘直刻[低速原抓WAV+CUE][1.1G]
- 群星《唱给女人的歌》24K德国HD金碟[WAV+CUE]
- 孙燕姿.2011-是时候【美妙音乐】【WAV+CUE】
- 苏芮.2003-回首·时代全经典2CD【华纳】【WAV+CUE】