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

【干货,实战经验】nginx缓存问题

文章目录

  • 案例背景
  • 出现的问题:
  • 定位到问题
  • 解决方式
    • 修改配置
    • 修改后的nginx配置

案例背景

有2个服务器A 和B,A是一个动态ip经常变公网ip,B是一个云服务器,公网ip固定.
于是我通过ddns ,找了个域名C,动态解析A服务器上的公网ip。
A服务器公网ip所在服务器里面部署了个api接口服务A-1,
在B服务器上部署了个前端应用B-1,和nginx,
在nginx中通过访问/api前缀,以proxy_pass的方式转发到A服务器的的应用A-1, 通过这个域名的方式请求.

出现的问题:

现在出的问题是:
A服务器的ip动态变了,域名解析也变了,但是请求A-1的接口失败,需要重启nginx服务才生效。

定位到问题

Nginx的DNS缓存机制未及时更新动态IP变化

解决方式

修改配置

原来的nginx配置

    location /sse-api/ { 

        proxy_pass http://development.xx.com:7890/api  # 添加/api/后缀
        proxy_set_header Host $http_host;
    }

修改后的nginx配置

    location /sse-api/ { # 大模型 - 后台接口
        resolver 8.8.8.8 223.5.5.5 valid=10s;  # 使用Google DNS,每10秒刷新解析
        set $backend_host "development.xx.com:7890";  # 仅域名+端口
        proxy_pass http://$backend_host/api/;  # 添加/api/后缀
        proxy_set_header Host $http_host;
    }    

**参数解释

  • resolver:指定DNS服务器,可替换为阿里云DNS(如223.5.5.5)或运营商DNS。
  • valid=10s:设置DNS缓存有效期为10秒,超时后自动重新解析。
  • 变更A服务器IP后,等待10秒,Nginx自动解析新IP。

大功告成!!


http://www.kler.cn/a/601175.html

相关文章:

  • [GHCTF 2025]ez_readfile
  • LabVIEW 与 PLC 通讯的常见方式
  • 分级反爬虫是什么?JAVA实现反爬虫策略
  • K8S学习之基础五十:k8s中pod时区问题并通过kibana查看日志
  • uniapp中$emit的使用方法
  • RWEQ 模型深度讲解:结合 Python、ArcGIS 等实现土壤风蚀归因分析
  • GitHub和Gitee上的一些AI项目
  • Zbrush插件安装
  • HarmonyOS NEXT 实现拖动卡片背景模糊效果
  • 独立组网和非独立组网
  • Linux 多线程-生产消费者模型线程池线程单例模式其他
  • 力扣刷题39. 组合总和
  • github怎么关闭issue禁止评论设置步骤
  • [ChatGPT 高级进阶系列] 用ChatGPT加速前端开发:高级思维链提示全解析
  • 【漫话机器学习系列】161.验证曲线(Validation Curve)
  • 括号合法题
  • 在CentOS系统上运行Ruby on Rails应用的详细步骤
  • 借助可视化,快速洞察数据背后的商机
  • 游戏如何检测GG修改器
  • 英伟达「虚拟轨道+AI调度」专利:开启自动驾驶3.0时代的隐形革命