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

Hugo部署GitLab Pages后,站点地图仍显示gitlab.io而非自定义域名

解决GitLab Pages部署后sitemap与RSS仍用默认域名的问题

可能的原因及修复步骤

1. 检查CI/CD部署脚本是否覆盖baseURL

问题大概率出在.gitlab-ci.yml的构建命令里——很多时候会手动指定--baseURL参数,直接覆盖config.toml的配置。

  • 打开项目根目录的.gitlab-ci.yml,找到构建静态站点的命令(比如Hugo的hugo)
  • 如果看到类似hugo --baseURL https://project-xxxxx.gitlab.io/的写法,要么删掉这个参数,要么替换成你的自定义域名:hugo --baseURL https://www.example.com/

2. 清除GitLab Pages缓存

GitLab可能缓存了旧的构建产物,导致新配置没生效:

  • 进入项目的Settings > Pages页面
  • 点击页面底部的「Clear cache」按钮,然后重新触发一次CI/CD构建

3. 确认站点生成工具的配置优先级

不同静态站点生成器对baseURL的处理有差异:

  • 若用Hugo:检查是否存在HUGO_BASEURL环境变量(CI环境可能自动注入),可以在CI脚本里显式设置export HUGO_BASEURL="https://www.example.com/",或者在构建命令里指定正确参数。
  • 若用Jekyll:确认_config.yml里的url和baseurl都配置正确,同时构建时用JEKYLL_ENV=production环境,避免配置不生效。

4. 验证DNS配置的有效性

虽然站点能访问,但DNS记录可能还在过渡,导致构建时获取到旧域名:

  • 用nslookup或dig工具确认自定义域名已正确指向GitLab Pages服务器
  • 等待DNS完全生效后,重新触发构建

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.12 07:52:02