docker部署前端nginx跨域不生效的解决之道
在使用docker部署前端nginx时,可能会遇到跨域请求失败的问题。本文将帮助你解决这个问题。
问题描述
一位开发者在进行前端nginx配置时,遇到了跨域状态问题。虽然其default.config文件中已设置了相应的代理规则,但实际请求时仍触发跨域限制。
立即学习“前端免费学习笔记(深入)”;
解决方案
该问题的关键原因在于,尽管nginx已代理了3344端口的后端,但前端请求时仍直接访问该端口。要解决这个问题,需要修改前端配置,使之不在请求接口时加入3344端口号。
具体操作步骤
在default.config文件中,需要将以下代理规则:
location / { proxy_pass http://127.0.0.1:3344; }
登录后复制
修改为:
location / { proxy_pass http://backend; }
登录后复制
同时,在前端请求中,直接使用以下形式:
fetch('api/test')
登录后复制
而无需添加端口号:
fetch('http://127.0.0.1:3344/api/test')
登录后复制
通过这些修改,前端请求将直接访问代理后的后端,跨域限制问题将得到解决。
以上就是Docker部署前端Nginx跨域失败了,该如何解决?的详细内容,更多请关注其它相关文章!
Article Links:https://www.hinyin.com/n/258496.html
Article Source:admin
Article Copyright:除非特别标注,否则均为本站原创文章,转载时请以链接形式注明文章出处。