服务器与大带宽专家 · 持牌IDC/CDN/ISP服务商
简米科技官网JIANMI TECH
资讯 2026-11-12 简米科技 3,295 字 8 分钟阅读

hmailserver如何更改域名?邮件服务器域名修改教程

导读hMailServer更改域名方法:换域名前必须懂的两种操作路径hMailServer更改域名的核心结论是:用安装目录下的hMailServer.INI改一行参数,或者直接在数据库里更新域名记录,前者适合单域名快速切换,后者适合批量改域名或做多域名迁移,很多管理员第一次接触hMailServer换域名时,第一反……

hMailServer更改域名方法:换域名前必须懂的两种操作路径

hMailServer更改域名的核心结论是:用安装目录下的hMailServer.INI改一行参数,或者直接在数据库里更新域名记录,前者适合单域名快速切换,后者适合批量改域名或做多域名迁移。

很多管理员第一次接触hMailServer换域名时,第一反应是删掉旧域名重建一个,这个做法不是不行,但会连带丢掉域名下的所有账号、别名、分发规则,邮箱历史数据也没了,代价太大,hMailServer真正合理的改法,不需要动数据文件,只需要改配置层面的指向关系。

INI配置文件快速改,适合临时切换域名

hMailServer把主域名信息存在安装目录的Bin文件夹下,文件名叫hMailServer.INI,这个文件负责告诉服务“我是谁”,改域名本质是改这里面的身份信息。

操作路径:

  • 打开hMailServer安装目录,进入Bin文件夹,找到hMailServer.INI
  • 用记事本打开,找到[Settings]小节下的domainname=参数
  • 把等号后面的旧域名换成新域名,保存关闭
  • 打开Windows服务管理器,右键“hMailServer”服务,选择“重新启动”

这一套做完,服务已经认了新域名,接下来必须处理的是邮件客户端,Outlook、Foxmail里SMTP发件域名和POP3收件域名,全部要同步换成新地址,否则客户端连不上。

只改INI有一个明显边界,它同时会影响自动生成的administrator账号登录名和默认发件域名,如果服务器上跑着多个虚拟域名,这份配置只管“主身份”,不会帮你把每个域名的MX记录都迁过去,这部分要自己去DNS服务商后台处理。

数据库批量改,适合多域名或存量账号较多的服务器

hMailServer同时支持内置的SDF数据库、MySQL、MSSQL三种存储方式,多数中小型部署用的是默认SDF文件,它位于hMailServer安装目录的Data文件夹里,改多域名场景下,直接操作数据库表比反复改INI更可控。

需要改的表叫hm_domains,里面每一个域名会员有一条记录,执行前务必备份数据库文件或者导出整个表结构,行业内比较稳妥的顺序是:先备份,再停服务,后改库,最后启动验证。

以MySQL为例,核心SQL逻辑如下:

  • 登录数据库管理终端,执行SELECT FROM hm_domains;,确认旧域名对应的domainid
  • 直接改这一行的domainname字段值,更新为新域名,执行UPDATE hm_domains SET domainname = 'newdomain.com' WHERE domainid = 1;
  • 同时检查hm_accounts表,账号地址后缀通常也绑定旧域名,需要跑一条批量替换把address字段里的旧域名后缀改成新域名
  • 重启hMailServer主服务,让改动正式生效

用数据库改完之后有一个高频遗漏项:hMailServer管理器的“域名”列表里可能还残留旧域的缓存显示,服务器端同步后需要按F5刷新或重开管理界面,否则看起来像没改成功。

hMailServer多域名配置:一台服务器管多个域名不是叠加域名那么简单

hMailServer改域名流程走通之后,另一个常见场景是一台服务器上同时管多个域名,不少管理员用一台邮件服务器跑两三个公司的邮箱服务,误以为只需要在“域名”设置里反复点“添加”,这其实是把多域名配置理解成叠加了。

真正合规的多域名配置路径

hMailServer左上角“添加域名”只是第一步,重新添加域名后每个域名都有独立的hm_domains记录,但它们共用同一个SMTP出口IP,逻辑上,服务器靠发件人地址后缀判断该走哪套规则,所以每新增一个域名,都需要同步做以下三件事:

  • 给新域名添加MX记录,指向邮件服务器的公网IP或主机名,注意TTL不建议设太长,600秒是常见起步值
  • 配好SPF记录,新版hMailServer对垃圾邮件拦截判断更严格,缺SPF会被主流邮箱直接丢进垃圾箱
  • 在hMailServer的“域名 → 新域名 → 递送”里勾选允许外部到外部,否则转发规则会失效

还有一个操作细节容易翻车:域名间共享账号邮箱前缀,比如两个域名都创建了postmaster这个账号,hMailServer不会拦截,但对外收信时两边都会收到postmaster的邮件,容易造成信息混淆。

hMailServer改域名后收不到邮件?排查这四处配置

改域名后最常见的现象是服务器能发不能收,或者连发都发不出去,业内专家指出,改域名后70%以上的收发异常,问题根源不在hMailServer本身,而是和域名关联的外围环境没改干净。

第一处:DNS解析和MX记录指向

hMailServer只是一台发信网关,外部邮件服务器往新域名投递时,依赖的是DNS系统的MX记录,打开域名注册商的DNS管理面板,删除旧域名的MX记录,新增一条主机记录为的记录,值填你邮件服务器的公网主机名,优先级填10,改完等DNS生效,用nslookup -type=mx newdomain.com命令验证,能看到解析结果才算OK。

第二处:发件人地址重写规则

如果你的服务器之前配置过“发件人地址重写”,比如把所有外发邮件统一改写为@olddomain.com,那么改域名后这部分必须同步更新,位置在hMailServer管理器的“规则”菜单下,找到“重写发件人地址”相关规则,把规则里的旧域名全部替换成新域名,否则对方收到邮件时看到的发件人还是旧后缀,回信又退回到不存在的旧域名。

第三处:SSL/TLS证书的域名绑定

使用SMTPS或POP3S加密连接时,如果证书上绑定的还是旧域名,客户端会报安全证书错误,新版Windows客户端对证书校验很严格,出现“证书名称不匹配”提示后,Outlook会自动拒绝连接,这种情况需要重新申请覆盖新域名的证书,并在hMailServer的“高级 → SSL证书”里重新指定证书文件。

第四处:客户端配置文件批量替换

服务器端改完都通,不代表PC端能用,常见的错误是通讯录里存了老域名后缀的邮件地址,或者是接收服务器POP3设置里填的主机名还是旧域名,拉出一份账号清单,挨个检查以下配置项:

  • 接收邮件服务器:mail.newdomain.com(原为旧域名则要改)
  • 外发邮件服务器:mail.newdomain.com(不是填域名本身,要看具体解析名)
  • 账户用户名:一般为完整邮件地址,结尾必须为新域名
  • 收件人缓存:Outlook的自动补全列表也要清掉旧的

Q&A:hMailServer域名怎么改,如何确认改动已经生效?

问:hMailServer更改域名时,用INI文件改和数据库改,哪种方式更推荐?
答:单域名、无历史数据沉淀的测试环境用INI改最快,重启服务即生效,生产环境或存在多个账号、多个域名、大量历史邮件的服务器,推荐数据库操作,因为hm_domains表能直接看到所有域名关联的内容,批量搬迁时不易漏项。

问:hMailServer改域名后,旧域名的邮件还能继续收到吗?
答:分两种情况,如果只是改了主域名但没有删除旧域名记录,旧域名下的账号仍然存在,MX记录也还指向服务器,那旧域名照常收信,如果删除了旧域名记录,则旧地址全部失效,来信会被拒收,多数情况下,迁移期建议保留旧域名一个月再做删除。

问:hMailServer多域名配置下,不同域名之间能不能互相转发邮件?
答:能,在hMailServer的“规则”里可以配置跨域转发,前提是两个域名的MX记录都正确解析到这台服务器,转发动作需要勾选“允许外部到外部”,否则只对内部域名成员生效,这里有一个操作陷阱:如果转发目标域名的MX记录尚未生效,服务器会对方队列产生退信延迟,延迟时间默认在一到两小时左右。

分享本文
本文为 简米科技官网 原创,已由运维技术专家审核。转载请注明来源:原文链接
售前咨询 服务热线 售后 邮箱