Maybe GitLab 15.4 (September 2022) will help:

Getting started with GitLab Pages just got easier

We’ve made it much easier to get started with GitLab Pages. Instead of creating configuration files by hand, build them interactively using the GitLab UI.
Just answer a few basic questions on how your app is built, and we’ll build the .gitlab-ci.yml file to get you started.

This is the first time we’re using our new Pipeline Wizard, a tool that makes it easy to create .gitlab-ci.yml files by building them in the GitLab UI.
You can look forward to more simplified onboarding helpers like this one.

See Documentation and Issue.

Plus, GitLab 17.8 (January 2025) adds:

Primary domain redirect for GitLab Pages

You can now set a primary domain in GitLab Pages to automatically redirect all requests from custom domains to your primary domain. This helps maintain SEO rankings and provides a consistent brand experience by directing visitors to your preferred domain, regardless of which URL they initially use to access your site.

See Documentation and Epic.

Answer from VonC on Stack Overflow
🌐
Reddit
reddit.com › r/gitlab › configuring gitlab pages help!
r/gitlab on Reddit: Configuring GitLab Pages Help!
January 8, 2025 - - Navigate to the GitLab.rb file and edit the file. - Navigate to where GitLab pages setup is and then edit/add these lines: pages_external_url " YOUR GITLAB URL HERE" gitlab_pages['enable'] = true
Discussions

How to setup gitlab pages
I’m very new to the gitlab pipeline and I am trying to setup gitlab pages in my repository I followed the gitlab tutorial, plus some google searching Here is my .gitlab-ci.yml default: image: ruby:3.2 before_script: - bundle init - bundle install - gem install bundler - bundle config set ... More on forum.gitlab.com
🌐 forum.gitlab.com
3
0
March 30, 2025
java - How to activate GitLab Pages in an existing project? - Stack Overflow
I want to publish my code coverage reports for my Java project that is already on GitLab. I generate code coverage reports with JaCoCo in a folder located in app/target/site/jacoco/. I saw I had to More on stackoverflow.com
🌐 stackoverflow.com
Why is "Pages" not appearing in settings?
In the help on GitLab Pages the setup sound quite easy: Fork an example project: by forking a project, you create a copy of the codebase you’re forking from to start from a template instead of starting from scratch. Change a file to trigger a GitLab CI/CD pipeline: GitLab CI/CD will build ... More on forum.gitlab.com
🌐 forum.gitlab.com
7
0
May 29, 2018
[Gitlab]Where can I find Gitlab Pages hosted on my private Gitlab instance? - Stack Overflow
You have to activate the pages feature. In your gitlab.rb: pages_external_url "IP_OF_YOUR_GITLAB" gitlab_pages['enable'] = true More on stackoverflow.com
🌐 stackoverflow.com
🌐
GitLab
docs.gitlab.com › gitlab docs › use gitlab › deploy and release your application › gitlab pages › settings
GitLab Pages settings | GitLab Docs
In brief, this is what you need to upload your website in GitLab Pages: Domain of the instance: domain name that is used for GitLab Pages (ask your administrator). GitLab CI/CD: a .gitlab-ci.yml file with a specific job named pages in the root directory of your repository. GitLab Runner enabled for the project.
🌐
GitLab
docs.gitlab.com › gitlab docs › administer › update your settings › gitlab pages
GitLab Pages administration | GitLab Docs
To configure GitLab Pages DNS for single-domain sites without wildcard DNS: Enable the GitLab Pages flag for this feature by adding gitlab_pages['namespace_in_path'] = true to /etc/gitlab/gitlab.rb.
🌐
GitLab
docs.gitlab.com › gitlab docs › use gitlab › deploy and release your application › gitlab pages
GitLab Pages | GitLab Docs
By default, every project in a group shares the same domain, for example, group.gitlab.io. This means that cookies are also shared for all projects in a group. To ensure each project uses different cookies, enable the Pages unique domains feature for your project.
🌐
GitLab
docs.gitlab.com › gitlab docs › administer › update your settings › gitlab pages › gitlab pages for source installations
GitLab Pages administration for self-compiled installations | GitLab Docs
Edit gitlab.yml. Set host to the FQDN to serve GitLab Pages from, and set external_http to the secondary IP on which the Pages daemon listens: pages: enabled: true # The location where pages are stored (default: shared/pages).
Find elsewhere
🌐
GitLab
forum.gitlab.com › gitlab ci/cd
How to setup gitlab pages - GitLab CI/CD - GitLab Forum
March 30, 2025 - I’m very new to the gitlab pipeline and I am trying to setup gitlab pages in my repository I followed the gitlab tutorial, plus some google searching Here is my .gitlab-ci.yml default: image: ruby:3.2 before_script: - bundle init - bundle install - gem install bundler - bundle config set path 'vendor' cache: paths: - vendor/ workflow: rules: - if: $CI_COMMIT_BRANCH create-pages: stage: deploy script: - bundle exec jekyll build -d public pages...
🌐
PRACE
repository.prace-ri.eu › help
Introduction · Pages · Project · User · Help · GitLab
Read an introduction to GitLab Pages. Learn how to get started with Pages. Learn how to enable GitLab Pages across your GitLab instance on the administrator documentation.
🌐
Creoline
help.creoline.com › en › doc › gitlab-pages-ZZtvphZJyN
GitLab Pages
Navigate to the desired repository and select the menu item Settings → Pages. From here, you can customize the pipeline configuration via the gitlab-ci.yml file to enable GitLab Pages.
Address: Bergstr. 9a, 49341 Altenberge, Germany
(4.9)
🌐
GitLab
forum.gitlab.com › how to use gitlab
Why is "Pages" not appearing in settings? - How to Use GitLab - GitLab Forum
May 29, 2018 - In the help on GitLab Pages the setup sound quite easy: Fork an example project: by forking a project, you create a copy of the codebase you’re forking from to start from a template instead of starting from scratch. Change a file to trigger a GitLab CI/CD pipeline: GitLab CI/CD will build and deploy your site to GitLab Pages.
🌐
Erikpoehler
erikpoehler.com › home › gitlab › activating gitlab pages directly on your gitlab…
Activating Gitlab Pages directly on your Gitlab Server - Erik Pöhler's Weblog
July 30, 2025 - If you have installed Gitlab to use a subdomain such as gitlab.example.com you can activate Gitlab Pages on the same server quite easily:
🌐
GitLab
gitlab.lcqb.upmc.fr › help › user › project › pages › introduction.md
Introduction · Pages · Project · User · Help · GitLab
In brief, this is what you need to upload your website in GitLab Pages: Find out the general domain name that is used for GitLab Pages (ask your administrator). This is very important, so you should first make sure you get that right. ... Note: If shared runners are enabled by your GitLab administrator, you should be able to use them instead of bringing your own.
🌐
DevOps as Craft
virtualizare.net › devops › how-to-enable-gitlab-pages-a-comprehensive-guide.html
How to Enable GitLab Pages: A Comprehensive Guide
August 15, 2024 - There are many resources, including official documentation and community examples, to help you get started. GitLab Pages lets you host static websites directly from your GitLab repository. It’s a free service that supports both public and private projects. You can use any static site generator like Jekyll, Hugo, or even plain HTML, CSS, and JavaScript.
🌐
DevOps as Craft
virtualizare.net › devops › how-to-enable-gitlab-pages-for-your-project.html
How to Enable GitLab Pages for Your Project
May 5, 2024 - Ensure that your domain’s DNS settings are correctly configured to point to your GitLab Pages. If issues persist, verify that your domain registrar has the correct DNS records. Additionally, check for any SSL/TLS certificate errors that might be causing security blocks. In conclusion, enabling GitLab Pages for your project can significantly enhance your project’s visibility and accessibility.
🌐
GitLab
docs.gitlab.com › gitlab docs › use gitlab › deploy and release your application › gitlab pages › create deployment for static site
Create a GitLab Pages deployment for a static site | GitLab Docs
(To enable, go to Settings > General, expand Visibility, project features, permissions, and turn on the Pages toggle.) To complete the setup and generate a GitLab Pages deployment:
🌐
GitLab
about.gitlab.com › blog › engineering › hosting on gitlab.com with gitlab pages
Hosting on GitLab.com with GitLab Pages
April 7, 2016 - To build our Hexo site, we can start with this .gitlab-ci.yml: ... image: node:4.2.2 pages: cache: paths: - node_modules/ script: - npm install hexo-cli -g - npm install - hexo deploy artifacts: paths: - public only: - main
🌐
Wildsre
wiki.wildsre.com › gitlab › enable_gitlab_pages
Using GitLab Pages | WILD-SRE Learning Wiki
It enables auto‑deployment of static sites—generated by Hugo, Jekyll, MkDocs, or plain HTML/CSS/JS—directly from Git as part of the CI/CD workflow. You can use either GitLab’s default *.gitlab.io domain or a custom Pages domain, and support HTTPS and visibility control. CI/CD–native deployments: Defines pages: true in .gitlab-ci.yml to ...