DNS Configuration Guide for getai.page
Good News!
Your zone is active and the worker route is already configured! You just need to add one DNS record.
Quick Setup (2 minutes)
Add Wildcard DNS Record
Go to Cloudflare Dashboard:
https://dash.cloudflare.com/2cf1f02313c4ef76af3d62eb78bb906e/getai.page/dns/records
Click “Add record”
Enter these values:
Type:
AAAAName:
*(just an asterisk)IPv6 address:
100::Proxy status: ✅ ON (Orange cloud enabled)
TTL: Auto
Click “Save”
That’s it! 🎉
What This Does
The wildcard record (*.getai.page) will route all tenant subdomains to Cloudflare’s network:
tenant-finaldemo.getai.page✅tenant-testdemo.getai.page✅tenant-mycompany.getai.page✅Any
tenant-*.getai.pagesubdomain ✅
Already Configured
✅ Zone Status: Active
✅ Name Servers: betty.ns.cloudflare.com, kevin.ns.cloudflare.com
✅ Worker Route: *.getai.page/* → getaipage-router
✅ Worker Script: Deployed with R2 binding
After Adding DNS Record
Wait 1-2 minutes for DNS propagation
Then test your deployed tenants:
# Test health endpoint
curl https://tenant-finaldemo.getai.page/_health
# Test actual site
curl -I https://tenant-finaldemo.getai.page/
Verify DNS Resolution
# Check if wildcard DNS is working
dig tenant-finaldemo.getai.page
# Should show Cloudflare IPs (proxied)
# Look for ANSWER SECTION with Cloudflare addresses
Or use online checker:
Your Deployed Tenants
These will be accessible once DNS record is added:
Tenant |
URL |
|---|---|
tenant-finaldemo |
|
tenant-testdemo |
|
tenant-getaipage2 |
|
tenant-getaipage |
Troubleshooting
If you get “This site can’t be reached” error
Check DNS record exists:
Go to DNS settings in Cloudflare
Confirm
* → 100::record existsConfirm proxy (orange cloud) is ON
Wait for propagation:
DNS changes can take 1-5 minutes
Sometimes up to 30 minutes globally
Check worker logs:
If you get 404 or 500 errors
Verify files are in R2:
# List files for a tenant python -c " import boto3, os s3 = boto3.client('s3', endpoint_url=os.getenv('R2_ENDPOINT'), aws_access_key_id=os.getenv('R2_ACCESS_KEY_ID'), aws_secret_access_key=os.getenv('R2_SECRET_ACCESS_KEY'), region_name='auto') objs = s3.list_objects_v2(Bucket='getaipage', Prefix='tenant-finaldemo/') for obj in objs.get('Contents', [])[:10]: print(obj['Key']) "
Check worker is deployed:
python deploy_worker.py
Alternative: Use A Record Instead of AAAA
If you prefer IPv4:
Type:
AName:
*IPv4 address:
192.0.2.1(placeholder for proxied)Proxy: ✅ ON
(When proxied, Cloudflare handles the actual IP routing)
Manual DNS Configuration Complete Checklist
[ ] Open Cloudflare Dashboard → DNS
[ ] Add AAAA record:
* → 100::[ ] Enable proxy (orange cloud)
[ ] Save record
[ ] Wait 2 minutes
[ ] Test:
curl https://tenant-finaldemo.getai.page/_health[ ] Should return:
OK
Need More Help?
The script configure_dns.py attempted to add this automatically but needs DNS edit permissions. You can:
Add the permission to your API token:
Go to API Tokens in Cloudflare
Edit token:
2MfCcf2yvvTUjzNtfVcD-UIy6bf6t_wnPcSc9MqVAdd permission: Zone / DNS / Edit
Then run:
python configure_dns.py
Or just add it manually (faster!): Follow the steps above
Status: One DNS record away from being fully operational! 🚀