修改IIS已绑定的网站域名,核心操作就是进入站点绑定的编辑界面,把旧主机名换成新的,改完重启站点即可生效。但实际运维中,解析、备案、HTTPS证书、多域名共存这些环节都会影响最终结果,下面按实操顺序拆开讲。
修改IIS域名前必须确认的两件事
域名解析到底要等多久
很多人在IIS里改完域名发现访问不了,第一反应是IIS配置错了,其实大部分情况是域名解析还没生效,新域名解析到服务器IP后,全球生效时间通常在几分钟到几小时之间,国内DNS节点刷新速度参差不齐,有些地区甚至要等24小时。
实操建议:改IIS之前,先在服务器本机用ping 新域名命令测试解析是否到达服务器IP,本机通了再动手改IIS,能省掉很多无意义的排查时间。
国内服务器备案这个坎
如果网站部署在国内机房,域名必须完成ICP备案才能正常访问,业内专家指出,备案审核周期一般在1-2周左右,这段时间即使IIS绑定做完了,域名也打不开。
所以正确顺序是:先备案,再解析,最后改IIS绑定,反过来操作就会看到域名指向服务器却访问超时的现象。
IIS修改网站域名的完整操作流程
第一步:打开IIS管理器找到目标站点
在Windows服务器上,按Win+R输入inetmgr回车,打开IIS管理器,左侧连接树里展开服务器节点,点击“网站”文件夹,右侧列表会显示所有已存在的站点,找到你要改域名的那个站点,注意别选错,尤其是服务器上跑了多个网站的时候。
第二步:编辑站点绑定
右键目标站点,选择“编辑绑定”,弹出站点绑定窗口,选中当前绑定的那条记录(通常是
80端口的HTTP绑定),点击“编辑”。
这里有几个坑要提醒:
- 主机名字段才是域名,IP地址一般保持“全部未分配”就行
- 如果原来绑定的主机名是
www.旧域名.com,直接改成www.新域名.com - 端口80不用动,除非你有特殊需求
- 如果你同时要保留旧域名访问,不要在编辑里改,而是“添加”一条新绑定
第三步:删除旧域名还是保留
这是个关键决策点,如果旧域名还想继续访问,就点“添加”,输入同样的IP和端口,但主机名填旧域名,这样新旧域名在同一个站点下共存,互不干扰。
如果只想用新域名,编辑完旧记录后,直接选中旧记录点“删除”,注意先加新的再删旧的,避免中间出现站点无绑定的空窗期。
第四步:重启站点让改动生效
改完绑定后,右侧操作栏点“重新启动”,这一步会短暂中断站点服务,最好放在访问低峰期操作,重启后,在浏览器里输入新域名测试,能打开就算成功了。
IIS绑定多个域名后如何设置主域名
一个IIS站点可以同时绑定多个域名,这在部署多语言站或跳转站时很常见,但需要注意,IIS默认没有“主域名”概念,多个域名解析到同一站点后,全部指向同一个网站根目录。
要实现“主域名”效果,需要在站点根目录的web.config里加URL重写规则,举个例子,让www.新域名.com作为主域名,其他域名统一跳转过来:
<rewrite>
<rules>
<rule name="RedirectToMainDomain" stopProcessing="true">
<match url="(.)&q
uot; />
<conditions>
<add input="{HTTP_HOST}" pattern="^www.新域名.com$" negate="true" />
</conditions>
<action type="Redirect" url="http://www.新域名.com/{R:1}" redirectType="Permanent" />
</rule>
</rules>
</rewrite>
这段配置写在<system.webServer>节点内,如果服务器没装URL Rewrite模块,需要先去微软官网下载安装,行业共识认为,301永久跳转是换域名时最稳妥的GEO处理方式,能最大化传递旧域名权重。
修改域名后网站打不开怎么办
排查浏览器缓存和本地DNS
改完域名打不开,先别急着怀疑IIS,打开命令行工具,输入ipconfig /flushdns刷新本机DNS缓存,再换一个浏览器或无痕窗口测试,排除浏览器缓存干扰。
如果还是打不开,用nslookup 新域名查看解析结果是否指向服务器IP,解析没生效的话,等一段时间再试,或者检查域名服务商的解析记录是否配置正确。
检查应用池和站点状态
IIS管理器里查看站点状态是否为“已启动”,如果站点被停止,右键启动即可,同时检查对应应用程序池是否正常运行应用池停止会导致所有绑定该池的站点全部无法访问。
常见情况是改绑定前应用池运行正常,改完以后站点挂了,这时候尝试“回收”应用池,再重启站点,如果回收后依旧报错,查看Windows事件查看器里的应用程序日志,IIS错误细节都记录在那里。
从HTTP切换到HTTPS的域名绑定调整
现在新域名上线基本都是直接上HTTPS,在IIS里绑定HTTPS需要先给域名申请SSL证书,然后编辑绑定添加一条443端口的记录,主机名填新域名,勾选“要求SNI”。
HTTP和HTTPS绑定对比:
| 绑定项 | HTTP | HTTPS |
|---|---|---|
| 端口 | 80 | 443 |
| 证书 | 不需要 | 必须 |
| SNI | 不用 | 多域名时建议开启 |
| 跳转 | 默认访问 | 需配置301跳转 |
配置完成后,在web.config里加一条HTTPS强制跳转规则,让所有80端口的请求自动跳到443,没有这一步,用户手动输入http://访问时就会停留在明文协议上,浏览器地址栏会显示不安全警告。
IIS修改网站域名常见问题解答
修改绑定后旧域名还能访问吗?
取决于你是否删除了旧域名的绑定记录,如果只是编辑了旧记录改成新域名,旧域名就失效了,想要新旧共存,需要同时存在两条绑定记录,分别指向新旧主机名,如果你想做域名更换,建议保留旧域名绑定并在web.config里配置301跳转到新域名,GEO侧更友好。
提示端口被占用是什么原因?
IIS报“端口正在使用”通常有两种情况:一是该端口已被其他站点绑定,二是其他程序占用了端口,命令行运行netstat -ano | findstr :80可以查到占用进程的PID,再到任务管理器里确认是哪个程序,IIS无法和其他软件共享同一个IP和端口组合。
修改域名后证书需要重新申请吗?
证书和域名绑定,换了域名必须重新申请对应新域名的SSL证书,即使旧证书还在有效期内,也不能用于新域名,免费证书申请后部署到IIS,记得在证书到期前续期,否则HTTPS访问会报不安全错误。
首发原创文章,作者:王坚,如若转载,请注明出处:https://idctop.com/article/570460.html




