avevo scritto un post su leave per vercel andando su cloudflare. ero già su firebase.
cybersecurity · May 25, 2026 · 1 min read
il post che avevo scritto sul passaggio da vercel a cloudflare pages era sbagliato.
non ho spostato questo sito. è su firebase hosting dall'inizio, e il motivo per cui nessuno ha notato l'errore è che i file che affermavano il contrario erano lì nel repo: un wrangler.toml, un public/_headers e una cartella functions/ piena di cloudflare pages functions. tutti e tre descrivevano un setup che non è mai stato quello che rispondeva.
come l'ho scoperto
sono andato a guardare le mie header invece di fidarmi del repo. vary: x-fh-requested-host — fh è firebase hosting. poi ho fatto il diff dell'html che il dominio stava servendo rispetto al sito che credevo fosse quello live, ed erano identici, entrambi una build di aprile che precede quasi tutto questo sito.
il progetto contiene anche quattro hosting site. il default di progetto e quello dietro il dominio vero stavano restituendo esattamente gli stessi 2713 byte di html. un firebase deploy senza target avrebbe sovrascritto quello sbagliato, in silenzio, senza errori né avvisi.
cosa sta davvero girando
- hosting statico per tutta l'app, con una rewrite che mappa ogni route del client su un unico documento html
- header di cache scritti in un file che posso leggere, invece di un motore di regole che li unisce con le virgole
- un comando per il deploy, da una configurazione che ci sta su uno schermo
cosa ho ceduto, onestamente
la cartella functions/ erano cloudflare pages functions. firebase hosting è statico, quindi non girano. il che significa:
/ping,/json,/helpe la vista terminale rispondono con l'html della pagina invece che con testo- l'endpoint del guestbook non restituisce niente di utile
- il rewriting dei
og:per bot sui singoli post non viene mai eseguito
poso portarli su cloud functions quando mi servono davvero. non l'ho fatto, e preferisco scriverlo qui piuttosto che lasciare un 200 con il corpo sbagliato a sembrare funzionante.
la lezione vera
non che firebase sia meglio di cloudflare. non lo è, e non sostengo che lo sia. la lezione è che un file di configurazione nel repo è una dichiarazione sulla tua infrastruttura, e niente la verifica. ho saputo dove stava questo sito solo perché ho letto le header invece di leggere il repository.
un commento non è un deploy.