← back to Interiordesignershowroom
GOLIVE.md
31 lines
# Go-Live — interiordesignershowroom.com
Status: **🟢 LAUNCHED — https://interiordesignershowroom.com is LIVE (2026-08-01).**
NS swapped (whois-verified), CF zone active, real Let's Encrypt cert on origin (auto-renew),
IP-bound nginx `:443`, browser-verified 0 console errors. Monetization pending network signups.
Local dev: pm2 `interiordesignershowroom` on Mac2 `:9861`.
Production: pm2 `interiordesignershowroom` on Kamatera (45.61.58.125) `:9876`, DB `idshowroom`.
## ✅ Done (server-side, by Claude)
- [x] Cloudflare zone created (`interiordesignershowroom.com`, id `6d94445c…`)
- [x] CF DNS: apex `A` + `www` CNAME → 45.61.58.125, **proxied**
- [x] Kamatera: code rsync'd, dedicated PG DB+role `idshowroom`, schema loaded, seeded, `npm install`, pm2 started + saved
- [x] nginx vhost (`:80` + `:443`, dual-serve, **loop-proof under any CF SSL mode**)
- [x] self-signed origin cert (`/etc/nginx/origin-certs/`) for encrypted CF↔origin under Full mode
- [x] Origin verified: `/` `/shop` `/guides` `/robots.txt` `/sitemap.xml` all 200 via Host header on both :80 and :443
## ⏳ Remaining — YOUR steps
1. **REQUIRED — swap nameservers at Namecheap** (Domain List → Manage → Nameservers → Custom DNS):
- `ezra.ns.cloudflare.com`
- `kimora.ns.cloudflare.com`
Propagation ~5–60 min; the CF zone flips `pending → active`, and the site goes live at https://interiordesignershowroom.com.
2. **OPTIONAL hardening — set CF SSL mode to Full** (dash → SSL/TLS → Overview → *Full*), and toggle *Always Use HTTPS*. (My API token can't change zone settings, only DNS.) Site works without this; Full just encrypts the CF→origin hop end-to-end.
## After it's live
- Submit `https://interiordesignershowroom.com/sitemap.xml` to Google Search Console.
- Register the live URL as a CJ **promotional property** (→ yields `CJ_WEBSITE_ID`); apply to Amazon/Rakuten/ShareASale.
- Paste each network's creds → I route via the `secrets` skill → feed turns on (no redeploy).
## Rollback
- CF: delete the apex/www DNS records (or pause the zone). Kamatera: `pm2 stop interiordesignershowroom`. Fresh DB, no destructive data ops.