The "Enforce HTTPS" Button Isn't Working

Hello!

I’m trying to make a website that has HTTPS with it, so I tried to click “Enforce HTTPS,” but it didn’t work. What it did do was to say: “Unavailable for your site because your domain is not properly configured to support HTTPS.”

My domain is with Freenom.

I looked on YouTube and read the troubleshooting custom domains but I didn’t find them very helpful. I don’t like downloading so many things just to get an SSL certificate, but I don’t want to pay for anything either.

Can someone please tell me clearly how to get an HTTPS for my website? Thanks.

3 Likes

Hi @catezee,

This seems like an account-specific question. I’d recommend reaching out to our private support team via our contact form https://github.com/contact, include what site, repo, and domain that you’re having trouble with and we can better assist you there.

Thanks!

Delete and recreate your CNAME file. As soon as I did that the “Enforce HTTPS” button became enabled and turning it on worked immediately. Found this tip in the highlighted portion of the instructions here:

found on https://help.github.com/articles/troubleshooting-custom-domains/#https-errors

11 Likes

This totally worked for me, thank you!

1 Like

Worked for me as well.  Woohoo!

Genius, totally worked!

This works for me either, thx.

Unfortunately, its not working for me

For those having trouble with this in future there’s a few debugging steps here you can follow to get this working.

  1. Make sure your DNS is set up correctly following the steps in this article:

If you’re configuring an apex domain make sure there are no other A, AAAA, or ALIAS records listed on the apex.

If you’re configuring a subdomain, www or otherwise, make sure there are no other A, AAAA, or CNAME records on that same subdomain.

These other records will redirect your traffic away from your Pages site. GitHub can’t generate a certificate for your site if your domain isn’t pointing solely at the correct DNS settings so having additional records can interfere with this.

Other records like MX and TXT are fine to keep though.

  1. If you have a CAA record make sure it’s contains 0 issue letsencrypt.org. GitHub uses LetsEncrypt to generate certificates so your CAA record will need to allow certificates to be generated from this source.

  2. Make sure your NS records or nameserver settings are pointing towards your DNS provider’s recommended settings. This is something you’ll need to check in your DNS provider’s documentation.

  3. Once your DNS is set up correctly you’ll need to wait for it to propagate fully before GitHub can see the new records. You can usually check propagation on a site like https://www.whatsmydns.net/

  4. If your records are correct and you still haven’t been issued a certificate you can force GitHub to request one for you. Simply visiting the repository settings page of your Pages site will trigger a certificate request for your domain. It should take take a few minutes to complete the process. You’ll know it’s finished when the “Enforce HTTPS” checkbox is selectable. Refresh the page a few minutes later to see if it’s done!

1 Like

Deleting the CNAME file and adding custom domain worked like a charm thanks

Worked for me. Thank you!

In my case the “Enforce HTTPS” button isn’t working, but https IS working! See https://data.cunyisph.org/ . The above tips seem to be about getting https working, but what if https is already working?

Hi @lwaldron - thanks for posting! It looks like your DNS records aren’t pointing to GitHub. We recommend using a CNAME record with a value of [user/org].github.io., where [user/org] is the owner of the repository that has the GitHub Pages site.

In your case, your domain has A records pointing to a third-party service, thus failing our validation. If you replace these with a CNAME record as above, this should resolve the error.

Please let us know if you have any questions.

Cheers,

Allie