当前位置: 首页 > news >正文

后端通过nignx代理转发,提供接口供前端在防火墙外访问

如题:
前端页面通过防火墙nat到外网,而后端接口均在内网。导致外网访问前端页面无法获取后端接口。

解决方案:
通过nginx代理转发后端接口路径。
在前端axios接口中,配置统一的baseurl为/api。

在nginx配置文件加上/api的location,并设置转发内网的后端url。

server {listen 80;server_name 100.100.100.100; # 更换为您的域名# 根目录和索引文件root /usr/share/nginx/html; # 确保这是您的静态文件路径index index.html index.htm;# 为根目录提供文件location / {try_files $uri $uri/ /index.html;}# 防止 .htaccess 和 .htpassword 等隐藏文件的访问location ~ /\. {deny all;}# 新增:后端API代理配置location /api/ {proxy_pass http://192.168.1.100:8080/; # 后端服务器地址proxy_set_header Host $host;proxy_set_header X-Real-IP $remote_addr;proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;proxy_set_header X-Forwarded-Proto $scheme;}# 可选:静态资源缓存配置location ~* \.(js|css|png|jpg|jpeg|gif|ico|svg)$ {expires 7d;add_header Cache-Control "public, no-transform";}
}

需要注意的是,前端axios的baseurl不可写死后端url,不可为http://xxxx:8080等url,也不可为http://xxxx.com等域名,设置IP和域名后nginx无法完成代理转发。所以必须为/api等,让url默认跟随前端url前缀,才可以完成nginx转发。

http://www.xdnf.cn/news/1030519.html

相关文章:

  • 计算机网络-自顶向下—第一章概述重点复习笔记
  • AI应用:计算机视觉相关技术总结
  • Elasticsearch从安装到实战、kibana安装以及自定义IK分词器/集成整合SpringBoot详细的教程ES(四)查询、排序、分页、高亮
  • 打卡Day53
  • 2025虚幻5蓝图编辑器的细节面板调不出来
  • MySQL-DQL数据查询语句深度解析与实战指南
  • 使用docker中的ollama
  • Python实战应用-Python操作MySQL数据库
  • 雪豹速清APP:高效清理,畅享流畅手机体验
  • python打卡day53@浙大疏锦行
  • DAY 53 对抗生成网络
  • 操作系统知识(1)
  • 造轮子系列:从0到1打造生产级HTTP客户端,优雅封装OkHttp/HttpClient,支持异步、重试与文件操作
  • 自定义表单右侧属性使用v-bind绑定渲染
  • 知识点|MVC模式(Model–view–controller)
  • 中英双配毕业祝福(毕业季快乐!)
  • MRI中的“髓鞘探测器”:T1w/T2w比值揭秘
  • 【面板数据】A股上市公司注册地所在地数据集(1991-2023年)
  • securecrt里如何把会话管理器固定在会话的左侧?
  • 北航自由指令驱动的多模态导航最新研究:OctoNav:开启通用智能体具身导航
  • SageAttention2原理和计算过程
  • 开机不用输入密码,修改注册表
  • 【设计模式】UML类图与工厂模式
  • C++中 using 命名别名和命名别名模板的用法
  • 寻找区域中的面积和中心点
  • ChatNT-用于DNA、RNA和蛋白质任务的多模态对话代理-文献精读143
  • P3740 [HAOI2014] 贴海报 题解
  • AUTOSAR图解==>AUTOSAR_TPS_SafetyExtensions
  • xss注入遇到转义,html编码绕过了解一哈
  • frp搭建踩坑....