You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Github Pages 无法适配含西里尔文的自定义域名问题求助

解决GitHub Pages无法添加含西里尔字符自定义域名的问题

我之前帮好几个开发者踩过这个坑——GitHub Pages对带西里尔字符的国际化域名(IDN)不支持直接输入,得先转成Punycode格式才行,这是因为DNS协议底层只认ASCII字符,非英文的域名必须转码后才能被系统识别。

给你一步步来解决:

  • 第一步:把西里尔域名转成Punycode
    不同系统有自带工具可以直接转:
    • Linux/macOS终端直接敲:idn "你的西里尔域名",回车就能得到以xn--开头的ASCII字符串
    • Windows PowerShell里输入:[System.Globalization.IdnMapping]::GetAscii("你的西里尔域名"),执行后就能获取转换结果
  • 第二步:在GitHub Pages里配置转码后的域名
    打开仓库的「Settings」→「Pages」,在「Custom domain」输入框里粘贴刚才得到的Punycode字符串(别输原西里尔域名),然后保存设置。
  • 第三步:配置DNS解析
    去你的域名服务商后台设置解析:
    • 如果用CNAME记录:主机记录可以填原西里尔域名(大部分服务商现在支持直接输入),记录值填你的GitHub Pages默认域名(比如xxx.github.io);如果服务商不支持输入西里尔字符,就把主机记录也转成Punycode
    • 如果用A记录:主机记录同样处理,记录值填GitHub官方的Pages IP(比如185.199.108.153这类,GitHub文档里有最新的IP列表)
  • 第四步:等待生效
    保存设置后,GitHub需要10-30分钟完成域名验证,DNS解析也可能需要一点时间,之后你的西里尔域名就能正常指向GitHub Pages了

额外提醒:

  • 转换的时候一定要复制原域名,别手动输入,避免西里尔字符拼写错误(比如相似的字符混淆)
  • 有些DNS服务商号称支持IDN自动转码,但为了避免兼容问题,还是自己转成Punycode再配置到GitHub更稳妥
  • 如果配置后还是不行,用nslookup或者dig命令查一下转码后的Punycode域名,看看解析是否指向正确的GitHub地址,排查DNS问题

内容的提问来源于stack exchange,提问作者Alexey Nikitin

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.26 09:07:27