迁移至新平台后,如何可靠访问AWS EC2上的旧IIS站点?
迁移期间访问AWS EC2上旧IIS站点的可行方案
方案一:修改EC2服务器本地hosts(你考虑的方案)
- 操作步骤:登录EC2 Windows服务器,编辑
C:\Windows\System32\drivers\etc\hosts文件,添加一行127.0.0.1 你的旧站点域名,让服务器自身请求该域名时直接指向本地IIS。 - 用户访问方式:让用户通过EC2公网IP直接访问,此时站点内的绝对链接会被服务器本地hosts解析到自身,相对链接自然正常工作。
- 注意点:多域名需逐一添加;执行
ipconfig /flushdns刷新DNS缓存或重启IIS生效;仅影响该EC2服务器的域名解析,不会干扰外部正常访问。
方案二:轻量反向代理(更灵活的替代)
- 在EC2上部署Nginx for Windows,配置代理规则:
- 将用户通过EC2 IP发起的请求,全部转发到本地IIS站点(比如
http://127.0.0.1:80)。 - 可选:用Nginx的
sub_filter模块,自动将响应中的旧域名绝对链接替换为EC2 IP,彻底解决链接跳转问题。
- 将用户通过EC2 IP发起的请求,全部转发到本地IIS站点(比如
- 优势:无需修改用户端或服务器hosts,批量处理链接更高效,迁移完成后可快速关停代理。
方案三:URL重写+临时DNS分流
- 在域名服务商处添加A记录,将测试子域名(如
old.yourdomain.com)指向EC2公网IP,同时在IIS站点绑定该子域名。 - 启用IIS URL重写模块,创建规则将站点内原域名的绝对链接重写为子域名链接,无需修改源码。
- 补充:如果存在硬编码的数据库查询或静态资源链接,可结合服务器hosts修改,确保所有请求都指向本地。
内容的提问来源于stack exchange,提问作者T. Milliken
相关产品推荐
相关产品推荐

