EC2实例公网IP变更后登录超时问题求助
解决EC2公网IP变更后前端仍调用旧IP的问题
以下是针对性的排查和解决步骤:
强制清除客户端缓存
浏览器会缓存静态资源,即使你修改了代码,旧的资源可能还在本地生效:- 按下
Ctrl+Shift+R强制刷新页面,或者打开开发者工具(F12),在Network面板勾选「Disable cache」后重新测试 - 如果前端资源部署在CDN上,需要手动刷新CDN的缓存节点
- 按下
全局排查旧IP的硬编码
除了util.js,项目其他文件可能也硬编码了旧IP:- 用IDE的全局搜索功能(比如VSCode按
Ctrl+Shift+F),搜索旧IP字符串13.211.13.11,检查所有匹配的文件并替换为新IP - 重点检查登录相关文件(比如报错里的login.js、loginpage.js)、API配置文件(如api.js、config.js)
- 用IDE的全局搜索功能(比如VSCode按
检查后端服务配置
如果EC2上的后端服务存在转发或地址配置,也可能残留旧IP:- 检查后端的配置文件(比如Nginx的反向代理配置、Java的application.properties、Node.js的config文件),确认是否有旧IP的配置项并更新
- 修改后重启后端服务,确保配置生效
验证环境变量配置
如果前端或后端使用环境变量存储API地址:- 检查前端的
.env系列文件(如.env.production),确认API地址已更新为新IP,之后重新打包部署前端资源 - 检查EC2后端的环境变量,是否存在指向旧IP的配置项并修正
- 检查前端的
长期避免IP变更问题的方案
- 给EC2实例分配弹性IP(Elastic IP),绑定后公网IP不会随实例启停自动变更
- 注册域名并将其解析到EC2的公网IP(或弹性IP),后续IP变更只需修改DNS解析记录,无需修改代码
内容的提问来源于stack exchange,提问作者user022yufjb
相关产品推荐
相关产品推荐

