Go-Live Checklist: joshfrye.com
This guide outlines the steps to deploy the Jekyll site to GitHub Pages on the custom apex domain joshfrye.com with SSL enabled.
1. Repository Preparation
- Create CNAME File: Ensure a file named
CNAMEexists at the root of the repository.- Content must be exactly:
joshfrye.com(nowww, nohttps://).
- Content must be exactly:
- Commit and Push:
git add CNAME git commit -m "Add CNAME for joshfrye.com" git push origin main
2. GoDaddy DNS Configuration
Log into the GoDaddy Control Panel, navigate to DNS Management for joshfrye.com, and apply the following changes:
-
Configure Apex Domain (A Records): Remove any existing
Arecords for@pointing to old hosts, and add the following fourArecords:Type Name Value TTL A @185.199.108.1531 Hour (or Default) A @185.199.109.1531 Hour (or Default) A @185.199.110.1531 Hour (or Default) A @185.199.111.1531 Hour (or Default) -
Configure Subdomain Redirect (CNAME Record): Ensure
wwwtraffic is routed to GitHub Pages so GitHub can redirect it to the apex domain:Type Name Value TTL CNAME wwwjoshfng.github.io.1 Hour (or Default)
3. GitHub Pages Settings
Once DNS records are updated (propagation can take up to 24 hours, but is usually fast):
- Configure Custom Domain:
- Go to your GitHub repository:
joshfng/joshfrye.com(or matching repo name). - Navigate to Settings > Pages.
- Under Build and deployment, select the source branch (e.g.,
main). - Under Custom domain, type
joshfrye.comand click Save.
- Go to your GitHub repository:
- Enforce HTTPS:
- Wait for the DNS check to pass. GitHub will automatically request an SSL certificate via Let’s Encrypt.
- Check the Enforce HTTPS checkbox once it becomes available (this can take from a few minutes up to a couple of hours).
4. Verification
- Verify DNS Records:
dig joshfrye.com +short # Should return the four 185.199.x.x IPs - Verify HTTP -> HTTPS Redirect:
http://joshfrye.com->https://joshfrye.com
- Verify Subdomain Redirect:
http://www.joshfrye.com->https://joshfrye.comhttps://www.joshfrye.com->https://joshfrye.com