Hello! 欢迎来到小浪资源网!


Docker部署后前端Nginx跨域失效:如何解决前端请求直接访问后端端口问题?


Docker部署后前端Nginx跨域失效:如何解决前端请求直接访问后端端口问题?

docker 部署后前端 nginx 跨域失效的解决方法

docker 中部署应用时,可能会遇到前端 nginx 跨域失效的问题。本文将介绍造成该问题的原因并提供相应的解决方案。

问题描述

根据用户提供的配置文件 default.config,前端请求仍然出现跨域错误。

立即学习前端免费学习笔记(深入)”;

原因分析

nginx 虽然已代理了后端 3344 端口的服务,但前端请求仍然直接访问 3344 端口。

解决方案

需要修改前端配置,在访问接口时不再添加 3344 端口。

具体修改步骤如下:

  1. 查看 nginx 代理配置

    location / {     proxy_pass http://ip-addr:3344; }
  2. 修改前端请求配置

    在前端代码中,将类似于以下的请求 url:

    fetch('http://ip-addr:3344/api/users')

    修改为:

    fetch('/api/users')

通过修改前端配置,访问接口时不再包含 3344 端口,即可解决跨域失效的问题。

相关阅读