Gitlab Pages: 404 for even the simplest setup

For no apparent reason it works now. I haven’t done anything, and I am even more convinced that there is a bug in the system.

Again: All build steps work fine, the runner finishes successfully, but nothing happened on the actual page. Then, at a seemingly arbitrary point in time, it works.

By the way, it now works as intended - as soon as the runner finishes, the page is updated.

I’ve been trying to deploy a Gitlab Pages page (https://timkendrick.gitlab.io/canvas) for the last 24 hours but I’m still getting continual 404s despite rebuilding, re-pushing every few hours, deleting and recreating the repo a couple of times etc.

Just to check I’m not going insane I’ve just made a fork of the plain-html example at https://timkendrick.gitlab.io/plain-html and that’s not working either – I take it the issues are still ongoing?

This is my first attempt at deploying a Gitlab Pages site if that makes any difference…

EDIT: The page is now accessible, it just took a couple of days of 404 before it worked

It just appears to be very, very slow. My site appeared after around 36 hours or so.

Hi again. After a previous embarrassing mistake, my site seems to be working perfectly. If you continue to have issues I’d bring it up in the issue tracker, since this was a genuine issue.

As of now, the custom domain http://test-page.nerde.pw/ still gives 404, while the gitlab.io one at https://willypillow.gitlab.io/NerdeNolzda/ works fine.

Okay, after two days it finally started to work.

I believe this is more than just the updates being very slow. Something else is going on. None of my sites are working at all. Perhaps they will come up after a few days or so, but going through this post and clicking on the sites of others, some of them are working for me and many others are returning 404.

Googling around, I came across this runbook which suggests this could be due to some load balanced servers not updating. I suspect that perhaps you only get a 404 if the load balancer puts you on an affected server.

Anyway, I hope GitLabs gets this figured out, because having a web site that’s down for portions of the population but up for others is far less than ideal.

For example:

+1 Same problems here

Having the same issue. I’ll check back tomorrow to see if it works by then…

TL:DR: Fixed it by renaming .htm files to .html

I’ll leave this here for anyone else who isn’t very good at this stuff. The instructions suck, some steps might be missing and some stuff isn’t clear, but I don’t know if anyone on this website really needs this, I’m sure everyone else is more knowledgeable than I am.


  1. Open this https://gitlab.com/pages/plain-html and click on the Fork button.
  2. Upload your stuff, I’m using GitHub for Windows to upload the files https://desktop.github.com/
  3. Open your Project. Find the SSH dropdown menu located at the center, select HTTPS
  4. Double Click to select the link, drag and drop the link on GitHub for Windows.
  5. Select the desired location, move your website in the Public folder, create a commit, then push the Sync button located on the top right.

  1. Open your GitLab project page.
  2. Open the gear menu located on the top right, select Edit Project located at the bottom.
  3. Push Ctrl+F and type Remove fork relationship, then push the Remove fork relationship button.
  4. Push Ctrl+F and type Rename Repository
  5. In the Project Name field add YourName.gitlab.io
  6. In the Path field add YourName.gitlab.io
  7. Click on the Rename project button.

Replace YourName with the desired name. Can be anything, banana.gitlab.io or just banana.
You don’t need .gitlab.io, you can type any name in it. You’ll have to play around with the link stuff, I didn’t experiment much, this info isn’t accurate.


  1. Open the Pipeline menu
  2. Click on the Run Pipeline button, then select Create Pipeline

You need to wait for it to do its stuff.

  1. Open the gear menu located on the top right.
  2. Select Pages and check if Congratulations! Your pages are served under: is there.
  3. If there’s a link try to open it.

Rename .htm files to .html or the website will not load.

Again the instrucitons kinda suck as I wrote this in a rush, but I hope it helps you figure out what went wrong somehow.

You can try this stuff to troubleshoot things around.

I can consistently now get the GitLab Pages to work.

The link is really messy, but it works.


Old Post Below

I have the same issue, I have no idea what I’m doing wrong.
https://ratchet302.gitlab.io/

The instructions seriously need to be streamlined and shortened, there should also be a big notice if the whole process is actually just really slow.

Umh… this is a little bit embarassing.

My main page was called index.htm
I changed it to index.html and now the website loads.

Did anyone else make the same mistake?

I forgot to rename my pages to “.html” but GitHub also accepted .htm pages, this is sadly a thing I forgot to ever change. Anyway, check your index.htm file, rename it to index.html.

Could a notice be added for dumbasses like me?
“Websites will not load if files use .htm, use .html instead.” or something. Just keep it short and clear at least.

I have no idea if this is just a little side effect, this is most likely unrelated to the problem in the original post.

How do you did it ? Could you explain it ?

Can confirm that I’m having a similiar issue, where even a very basic setup is actingly like Pages are building and then deploying, but attempting to go to the actual site is not working correctly.

(Commenting to follow)

I seem to be having a similar problem. I have a working Hugo-based site that I have now tried to publish via the CI/CD and Pages features, but the site responds with a 404. It’s been 30 minutes or so since the successful deploy step. Should I expect it to take a long time as some others have reported, or am I doing something wrong?

My repo is private, but here’s what my .gitlab-ci.yml looks like:

image: registry.gitlab.com/pages/hugo:latest

pages:
  script:
    - hugo
  artifacts:
    paths:
    - public
  only:
  - master

My site’s name is benjamincollins.com, so the url for Pages is https://aggieben.gitlab.io/benjamincollins.com. Could my project’s name be affecting anything (:sadpanda: if it is)?

@aggieben is your project’s name also benjamincollins.com? This is what you should use as a Pages URL. You can also find the URL by going to the Pages page.

Problem: I created a new GitLab project site as per instructions on https://docs.gitlab.com/ee/user/project/pages/#getting-started and mapped a custom domain as per instructions on https://docs.gitlab.com/ee/user/project/pages/getting_started_part_three.html#adding-your-custom-domain-to-gitlab-pages and still faced a similar issue as listed on this thread. I could access my website as http://mydomain.com but got a GitLab 404 error page when I tried to access my website as www.mydomain.com (my site does not have SSL).

Solution: Under my GitLab project site left navigation bar, I went to “Settings” -->? “Pages” and followed the instructions on https://docs.gitlab.com/ee/user/project/pages/getting_started_part_three.html#adding-your-custom-domain-to-gitlab-pages to add TWO domains viz. mydomain.com and www.mydomain.com. Both these domain names created on GitLab had DIFFERENT verification codes. On my Domain Management Control Panel, I added TWO entries of type TXT:
(1) Type: TXT, Name: T_gitlab-pages-verification-code.mydomain.com, Value: corresponding code taken from my GitLab page domain settings page.
(2) Type: TXT, Name: T_gitlab-pages-verification-code.www.mydomain.com, Value: corresponding code taken from my GitLab page domain settings page.
After the above two entries in GitLab and Domain Control Panel I could now access my website with both URLs viz. http://mydomain.com and www.mydomain.com.

Hope this helps others facing the same problem.

ResumeFodder problem: As per the original problem listed on this issue (https://gitlab.com/gitlab-com/support-forum/issues/569) I tried in my browser and see that the website is reachable as https://resumefodder.com but not as https://www.resumefodder.com. Looks like that problem is not solved for ResumeFodder till date after couple of years since this issue was originally posted. My site did not have httpS compared to ResumeFodder. However, ResumeFodder owner may want to try if my above solution works and www.resumefodder.com also starts working.

Thanks!

This is absolutely pathetic. People waiting several days for a website to how up, yet no help from actual admins from gitlab. I’m also in the same boat, forked a hugo project and under “pages” there is no page. Going to myusername.gitlab.io just gives me 404.

I just wasted hours, checking several guides and everything and I just need to “wait”? There is no information on the official pages regarding the “wait” part. Pathetic.

1 Like

@acc Ehi man, don’t be so stressed out. In a way or another they’re gonna figure that out. If you’re in a hurry you can set up an automatic deploy to a another hosting (e.g. shared hosting via ftp, Google App engine, ecc…).

It’s disappointing that sometimes it works sometimes it’s not. Initially, I observed that it takes a while before my site loads but its been taking hours now. The CI/CD went succesffuly, including deploying pages. A link is available in Settings/Pages but i always received 404. I must admit it’s kinda annoying.

Thinking of moving to S3, GH or Azure Storage.

I hope GL team can figure this out soon. Thanks still, it’s cool platform just little brittle.

Solution:

gitlab pages are slow to appear/update. How “slow” is slow depends on the current state of the infrastructure. It’s about 15 minutes to half an hour at the moment of writing.

I don’t have enough privileges to mark another comment as a solution, but I wanted to make it clear since this is the first thing that comes up googling “gitlab pages 404”

3 Likes