DNS Migration Guide
This guide covers migrating your domain from Squarespace to GitHub Pages.
Important: When to Migrate DNS
DO NOT migrate DNS until:
- ✅ Your site is fully built and tested locally
- ✅ Your site is deployed to GitHub Pages and working
- ✅ You’ve tested the GitHub Pages URL (username.github.io/lahave-website)
- ✅ Contact form is working on GitHub Pages
- ✅ You’re ready to make the switch
Pre-Migration Checklist
Before updating DNS:
- GitHub Pages is Live
- Site is accessible at:
https://YOUR_USERNAME.github.io/lahave-website/ - All pages load correctly
- Contact form works
- Site is accessible at:
- CNAME File is Set
CNAMEfile exists in repository root- Contains:
www.lahave.io - File is committed and pushed to GitHub
- Custom Domain Configured in GitHub
- Go to repository Settings > Pages
- Custom domain field shows:
www.lahave.io - GitHub shows “DNS check in progress” or “DNS check successful”
DNS Records Required
You need to set up the following DNS records in your domain registrar (Squarespace or wherever your domain is registered):
A Records (for root domain: lahave.io)
Create 4 A records with these values:
| Host | Type | Points To | TTL |
|---|---|---|---|
@ |
A | 185.199.108.153 |
3600 |
@ |
A | 185.199.109.153 |
3600 |
@ |
A |
185.199.110.153 |
3600 |
@ |
A | 185.199.111.153 |
3600 |
Note: The @ symbol represents the root domain (lahave.io)
CNAME Record (for www subdomain)
Create 1 CNAME record:
| Host | Type | Points To | TTL |
|---|---|---|---|
www |
CNAME | YOUR_USERNAME.github.io |
3600 |
Important: Replace YOUR_USERNAME with your actual GitHub username.
Step-by-Step DNS Update
If Domain is in Squarespace:
- Log in to Squarespace
- Go to Settings > Domains
- Click on lahave.io
- Go to DNS Settings
- Remove existing Squarespace DNS records (A records pointing to Squarespace)
- Add the 4 A records listed above
- Add the CNAME record for www
- Save changes
If Domain is with Another Registrar:
- Log in to your domain registrar (GoDaddy, Namecheap, etc.)
- Find DNS Management or DNS Settings
- Locate your DNS records for lahave.io
- Remove or update existing A records
- Add the 4 A records listed above
- Add the CNAME record for www
- Save changes
Verification Steps
1. Check DNS Propagation
After updating DNS, verify propagation:
- Visit whatsmydns.net
- Enter
lahave.ioand select “A” record type - Check that all 4 GitHub Pages IPs appear
- Enter
www.lahave.ioand select “CNAME” record type - Verify it points to
YOUR_USERNAME.github.io
2. Verify in GitHub
- Go to repository Settings > Pages
- Under “Custom domain”, you should see:
- Domain verified
- “DNS check successful” message
3. Test Website Access
Wait 24-48 hours for DNS to fully propagate, then test:
https://www.lahave.ioloads correctlyhttps://lahave.ioredirects to www (or loads directly)- All pages work
- Contact form works
- Images load
- SSL certificate is active (HTTPS works)
DNS Propagation Timeline
- Initial propagation: 1-4 hours
- Full propagation: 24-48 hours
- Global propagation: Up to 72 hours
During this time:
- Your site may be intermittently accessible
- Some users may see the old Squarespace site
- Some users may see the new GitHub Pages site
- This is normal and expected
Troubleshooting
DNS Not Propagating
- Wait at least 24 hours
- Clear your browser cache
- Try accessing from different networks
- Use DNS checker tools to verify globally
Site Shows GitHub 404
- Verify CNAME file is in repository root
- Check CNAME file contains correct domain
- Ensure GitHub Pages is enabled
- Wait for GitHub Pages to rebuild (can take a few minutes)
SSL Certificate Issues
- GitHub automatically provisions SSL certificates
- May take a few hours after DNS propagation
- Ensure “Enforce HTTPS” is enabled in GitHub Pages settings
Mixed Content (HTTP/HTTPS)
- Ensure all resources use HTTPS
- Check images, CSS, and JavaScript files
- Update any hardcoded HTTP URLs
After Migration
Once DNS has fully propagated:
- Monitor for 48 hours
- Check site accessibility
- Test all functionality
- Monitor contact form submissions
- Update Any External Links
- Update social media profiles
- Update business listings
- Update email signatures
- Cancel Squarespace (if applicable)
- Only after confirming new site works perfectly
- Keep Squarespace active for a few weeks as backup
Rollback Plan
If something goes wrong:
- Revert DNS records to Squarespace
- Wait for DNS propagation (24-48 hours)
- Fix issues on GitHub Pages
- Re-attempt migration when ready
Support Resources
Quick Reference
GitHub Pages IP Addresses:
- 185.199.108.153
- 185.199.109.153
- 185.199.110.153
- 185.199.111.153
CNAME Target:
YOUR_USERNAME.github.io(replace with your GitHub username)
Domain:
www.lahave.io