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
🌐
GitLab
docs.gitlab.com › gitlab docs › use gitlab › deploy and release your application › gitlab pages › settings
GitLab Pages settings | GitLab Docs
You can regenerate the unique domain for your GitLab Pages site. After the domain is regenerated, the previous URL is no longer active. If anyone tries to access the old URL, they receive a 404 error. ... You must have the Maintainer or Owner role for the project. The Use unique domain setting must be enabled in your project’s Pages settings.
GitLab Docs
Learn how to use and administer GitLab, the most scalable Git-based fully integrated platform for software development.
Environments
With GitLab Route Maps, you can go directly from source files to public pages in the environment set for review apps.
GitLab Pages
To use GitLab Pages, you must create a project in GitLab to upload your website’s files to. These projects can be either public, internal, or private. By default, GitLab deploys your website from a specific folder called public in your repository. You can also set a custom folder to be deployed ...
Releases
Releases are also visible on the ... on this page. Here is an example of milestones with no releases, one release, and two releases. A subgroup’s project releases cannot be associated with a parent group’s milestone. To learn more, read issue #328054, Releases cannot be associated with a supergroup milestone. You can be notified by email when a new release is created for your project. ... In the left sidebar, select Project overview. Select Notification setting (the bell ...
🌐
GitLab
docs.gitlab.com › gitlab docs › administer › update your settings › gitlab pages
GitLab Pages administration | GitLab Docs
The GitLab Pages daemon does not listen to the public internet. ... You have configured DNS for single-domain sites. You have a TLS certificate that covers your domain (like example.io). To configure single-domain sites with TLS support: Add your TLS certificate and key to /etc/gitlab/ssl. In /etc/gitlab/gitlab.rb, set the external URL for GitLab Pages and enable the feature:
Discussions

How to activate Gitlab Pages Properly? - Stack Overflow
I am currently setting up gitlab pages for our internal network. Now I have completed my project and the CI pipeline is working. Now I have gone through all the steps in the gitlab.rb configuration... More on stackoverflow.com
🌐 stackoverflow.com
Configuring GitLab Pages Help!
Hey I need some help with configuring pages. I can't get it working at all and not sure what I am doing wrong. I don't know much about gitlab, but neither does anyone else I work with. It's gitlab EE running in a podman container. I have tried all the different set up here https://docs.git... More on reddit.com
🌐 r/gitlab
1
1
January 8, 2025
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
I tried to set up Gitlab Pages, until now I finished uploading my static website files👇 Uploading artifacts... coverage/lcov-report: found 77 matching files Uploading artifacts to coordinat... More on stackoverflow.com
🌐 stackoverflow.com
🌐
GitLab
docs.gitlab.com › gitlab docs › use gitlab › deploy and release your application › gitlab pages
GitLab Pages | GitLab Docs
To use GitLab Pages, you must create a project in GitLab to upload your website’s files to. These projects can be either public, internal, or private. By default, GitLab deploys your website from a specific folder called public in your repository. You can also set a custom folder to be deployed with Pages.
🌐
GitLab
docs.gitlab.com › gitlab docs › use gitlab › deploy and release your application › gitlab pages › tutorial: create website from scratch
Tutorial: Create a GitLab Pages website from scratch | GitLab Docs
The example in this page uses user-defined job names. Jekyll needs to know where to generate its output. GitLab Pages only considers files in a directory called public.
🌐
GitLab
docs.gitlab.com › gitlab docs › install › installation methods › helm chart › configure › gitlab subcharts › gitlab pages chart
Using the GitLab Pages chart | GitLab Docs
GitLab Pages supports only one URL scheme at a time: Either with wildcard DNS, or without wildcard DNS. If you enable namespaceInPath, existing GitLab Pages websites are accessible only on domains without wildcard DNS. Enable namespaceInPath in the global Pages settings.
🌐
Reddit
reddit.com › r/gitlab › configuring gitlab pages help!
r/gitlab on Reddit: Configuring GitLab Pages Help!
January 8, 2025 - Take the wildcard .CSR and .KEY and put them in the path that you set in the GitLab.rb earlier. Go ahead and then reconfigure GitLab. - Lastly, to actually make the Pages work, you will want to ask you Domain Admin to create a new wildcard DNS entry for your GitLab instance (It will need to be *FQDN).
Find elsewhere
🌐
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
GitLab Pages uses the GitLab Pages daemon, a lightweight HTTP server that listens on an external IP address and provides support for custom domains and certificates. It supports dynamic certificates through SNI and exposes pages using HTTP2 by default. For more information, see the README. For custom domains, the Pages daemon must listen on ports 80 or 443. This does not apply to wildcard domains. You can set ...
🌐
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.
🌐
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)
🌐
YouTube
youtube.com › watch
How to Enable GitLab Pages for GitLab CE and EE - YouTube
How to Enable GitLab Pages for GitLab Community Edition (CE) and GitLab Enterprise Edition (EE)You'll learn how to enable GitLab Pages for your own GitLab in...
Published: February 22, 2017
🌐
GitLab
lab.las3.de › gitlab › help › administration › pages › index.md
Index · Pages · Administration · Help · GitLab
This is the minimum setup that you can use Pages with. It is the base for all other setups as described below. Nginx will proxy all requests to the daemon. The Pages daemon doesn't listen to the outside world. Set the external URL for GitLab Pages in /etc/gitlab/gitlab.rb:
🌐
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
April 25, 2022 - GitLab Pages must be enabled for the project. (To enable, go to Settings > General, expand Visibility, project features, permissions, and turn on the Pages toggle.)
🌐
Nira
nira.com › home › the ultimate manual to gitlab pages
The Ultimate Manual To GitLab Pages
May 3, 2022 - For this, you can either use the GitLab default domain for GitLab Pages websites, *.gitlab.io, or your own domain (e.g., abc.com). Keep in mind that you need to be the administrator in your domain registrar or control plan panel to set it up with pages.
🌐
GitLab
docs.gitlab.com › gitlab docs › use gitlab › organize work with projects › project settings
Project settings | GitLab Docs
August 21, 2023 - In the left sidebar, select Settings > General. Expand Visibility, project features, permissions. Turn off the Analytics toggle. Select Save changes. ... This feature is available only for public projects on GitLab.com.
🌐
GitLab
code.ini.uzh.ch › help
Index · Pages · Administration · Help · GitLab
This is the minimum setup that you can use Pages with. It is the base for all other setups as described below. NGINX proxies all requests to the daemon. The Pages daemon doesn't listen to the outside world. Set the external URL for GitLab Pages in /etc/gitlab/gitlab.rb:
🌐
GitLab
gitlab.com › help › user › project › pages › getting_started_part_two.md
Sign in · GitLab
The information does not usually identify you directly, but it can give you a more personalized web experience. Because we respect your right to privacy, you can choose not to allow some types of cookies. Click on the different category headings to learn more and change our default settings.