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

GitLab Pages URL配置咨询:能否调整默认基础URL为子域名格式?

当然可以配置成子域名形式!

完全没问题,GitLab Pages支持将基础URL配置为http(s)://<project>.<namespace>.company.io/这种子域名格式,下面是具体的配置步骤和注意事项:

前提条件

  • 你的GitLab实例(不管是自托管还是GitLab.com)支持自定义域名配置;
  • 你拥有company.io域名的DNS管理权限。

具体配置步骤

1. 配置DNS通配符记录

首先需要在你的域名服务商处添加一条通配符DNS记录,让所有<project>.<namespace>.company.io形式的子域名都指向GitLab Pages服务器:

  • 如果用CNAME记录:创建*.namespace.company.io,指向你的GitLab Pages服务器域名(比如自托管的话可能是pages.company.io,GitLab.com的话是gitlab.io);
  • 如果用A记录:创建*.namespace.company.io,指向GitLab Pages服务器的公网IP地址。

2. 在GitLab项目中配置自定义域名

进入目标项目的Settings > Pages页面:

  • 点击「New domain」按钮;
  • 在域名输入框中填写your-project.your-namespace.company.io(替换成实际的项目和命名空间名称);
  • 按照页面提示完成域名验证(通常需要添加一条TXT记录到DNS中,验证你对该域名的所有权);
  • 验证通过后,GitLab会自动处理后续的部署关联。

3. 调整项目静态资源路径

因为之前的URL是带项目路径的,现在切换到子域名根路径后,需要确保项目中的静态资源引用是相对路径,或者在静态生成工具中配置根路径:

  • 比如用Jekyll的话,在_config.yml中设置baseurl: "/";
  • 用Hugo的话,设置baseURL = "/";
  • 如果是纯静态HTML,确保所有链接、图片路径都是相对路径(比如./css/style.css而不是/your-project/css/style.css)。

4. 启用HTTPS(可选但推荐)

配置好域名后,在GitLab Pages的域名设置中可以开启「Force HTTPS」选项,GitLab会自动通过Let's Encrypt为你的子域名签发SSL证书,确保访问安全。

自托管GitLab额外注意事项

如果是自托管的GitLab实例,管理员还需要在gitlab.rb配置文件中做以下设置:

  • 开启Pages的外部URL支持:pages_external_url "https://pages.company.io/";
  • 允许通配符域名:pages_nginx['custom_gitlab_server_config'] = "server_name *.company.io;";
  • 重启GitLab服务使配置生效:sudo gitlab-ctl reconfigure。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.15 08:27:28