Dominio e SSL con Cloudflare
Cosa otterrai: il tuo dominio che punta al server via Cloudflare (DNS, protezione DDoS, WAF, CDN), e certificati Let's Encrypt automatici. Coolify gestisce il rinnovo SSL.
DNS = Domain Name System (risolve i nomi di dominio in IP). DDoS = Distributed Denial of Service (attacco a tappeto da più sorgenti; Cloudflare lo filtra prima che arrivi al tuo server). WAF = Web Application Firewall (blocca attacchi web comuni). CDN = Content Delivery Network (serve gli asset da edge location per caricamento più veloce).
Usiamo Cloudflare per il DNS. Aggiunge protezione DDoS, WAF e CDN a costo zero. Il dominio resta registrato su Namecheap; cambiamo solo chi gestisce il DNS. Cloudflare Free permette domini illimitati su un account.
Setup DNS con Cloudflare
Step 1: aggiungi il sito su Cloudflare
- Iscriviti su cloudflare.com (gratis)
- Add a site → inserisci il dominio root (es.
your-domain.com), nonwww.your-domain.com - Scegli il piano Free
- Cloudflare scansiona i record DNS esistenti. Rivedi e continua
- Cloudflare mostra due nameserver, es.
ada.ns.cloudflare.comebob.ns.cloudflare.com
Step 2: punta Namecheap a Cloudflare
Cloudflare mostra i nameserver dopo che clicchi Continue to activation sulla pagina di review DNS (es. millie.ns.cloudflare.com e tosana.ns.cloudflare.com).
- Login su Namecheap → Domain List → Manage accanto al tuo dominio
- Apri il tab Domain → sezione Nameservers
- Seleziona Custom DNS (al posto di "Namecheap BasicDNS")
- Inserisci i due nameserver Cloudflare nei campi (rimuovi quelli vecchi tipo
dns1.registrar-servers.com) - Salva
DNSSEC: se Namecheap ha DNSSEC abilitato, spegnilo prima o durante lo switch. Lo puoi riabilitare dopo via Cloudflare.
Dove impostare i nameserver: usa il tab Domain → Nameservers (non Advanced DNS). Advanced DNS serve per gestire i record quando usi Namecheap BasicDNS; con Custom DNS, tutti i record vivono in Cloudflare.
Successivo: torna su Cloudflare e click su I updated my nameservers. Cloudflare mostra "Waiting for your registrar to propagate your new nameservers". Usa Check nameservers now per ricontrollare. L'attivazione richiede tipicamente 1-2 ore, a volte fino a 24-48. Quando è fatta, vai a Coolify.
Step 3: aggiungi o aggiorna i record DNS in Cloudflare
- In Cloudflare, vai su DNS → Records
- Se Cloudflare ha importato record da un host precedente (es. Vercel), edita il record A esistente per
@e imposta IPv4 address all'IP del tuo server. Cancella eventuali CNAME perwwwche puntano altrove (es.cname.vercel-dns.com). - Assicurati di avere un record A per il root:
- Name:
@(dominio root) - IPv4 address: l'IP del tuo server
- Proxy status: DNS only (nuvoletta grigia) per il setup iniziale, oppure Proxied (arancione) se vuoi Cloudflare davanti
- Name:
- Aggiungi un record A per
www:- Name:
www - IPv4 address: l'IP del tuo server
- Proxy status: come sopra
- Name:
Proxy status: con DNS only (nuvoletta grigia), Let's Encrypt arriva al tuo server direttamente. Con Proxied (arancione), il traffico passa prima da Cloudflare. La sfida HTTP di solito funziona con Proxied, ma se il rilascio del certificato fallisce, passa temporaneamente a DNS only, aggiungi il dominio in Coolify, poi torna a Proxied.
Record email (MX, TXT per SPF/DKIM): tienili con DNS only (nuvoletta grigia). Proxiarli romperebbe la consegna delle email.
Namecheap Advanced DNS dopo lo switch: con Custom DNS, Namecheap Advanced DNS mostrerà "Change DNS Type" per tornare a BasicDNS. Ignoralo. Tutti i record DNS adesso sono gestiti in Cloudflare → DNS → Records.
Aggiungi il dominio in Coolify
- Apri Coolify → il tuo progetto → la tua applicazione (blog)
- Configuration → General
- Nel campo Domains, inserisci (separati da virgola):
https://your-domain.com,https://www.your-domain.com
- Assicurati che Start Command sia impostato (es.
pnpm --filter blog startper Next.js). Lascia Is it a static site? non spuntato. - Save
- Se vedi "no available server", vai su Configuration → Servers e assegna il tuo server (es. platform-1).
- Click su Redeploy per applicare la nuova configurazione. Coolify ricostruirà; Traefik richiede in automatico i certificati Let's Encrypt (1-2 minuti).
Check: apri https://your-domain.com. Dovresti vedere la tua app su HTTPS.
Modalità SSL Cloudflare
Se usi Proxied (nuvoletta arancione):
- Cloudflare → il tuo sito → SSL/TLS
- Imposta la modalità di cifratura su Full (Strict)
Full (Strict) assicura che il traffico da Cloudflare al tuo server sia cifrato con un certificato valido (Let's Encrypt). Flexible manderebbe HTTP all'origin, che è insicuro.
Redirect www verso root (opzionale)
Per redirezionare www.your-domain.com a your-domain.com (o viceversa), usa Page Rules o Redirect Rules di Cloudflare:
- Cloudflare → Rules → Redirect Rules → Create rule
- Name:
www to root - When:
(http.host eq "www.your-domain.com") - Then: Dynamic redirect →
https://your-domain.com${uri.path}${uri.query_string}→ 301 - Salva
In alternativa, Coolify li serve entrambi; puoi lasciarli così se preferisci.
Avanzato: DNS challenge (Cloudflare proxy + Let's Encrypt)
Se la sfida HTTP fallisce con Cloudflare Proxied e vuoi tenere la nuvoletta arancione, usa una DNS challenge. Il Traefik di Coolify può usare dnschallenge con Cloudflare.
- Cloudflare → My Profile → API Tokens → Create Token
- Usa il template "Edit zone DNS" oppure creane uno custom: Zone → DNS → Edit
- Copia il token
- In Coolify: Servers → il tuo server → Proxy → edita la configurazione Traefik
- Aggiungi DNS challenge e
CLOUDFLARE_API_TOKEN(oCLOUDFLARE_DNS_API_TOKEN) come da Coolify wildcard certs e lego Cloudflare provider
È opzionale. La maggior parte dei setup funziona con HTTP challenge e DNS only (nuvoletta grigia) o Proxied.