• cloudflare
  • cloudflare-tunnel
  • https
  • local-debugging
  • custom-hostname

Debugging locale senza problemi: ottenere HTTPS e hostname personalizzato con Cloudflare Tunnel

Questo articolo introduce come utilizzare Cloudflare Tunnel per ottenere HTTPS e hostname personalizzato per un debugging locale senza problemi.

Yijun
Yijun
Developer

Nel nostro sviluppo quotidiano, utilizziamo spesso http://localhost per accedere e fare il debug delle nostre applicazioni, il che è sufficiente nella maggior parte dei casi. Tuttavia, in situazioni come le seguenti, potremmo aver bisogno di utilizzare HTTPS e un hostname personalizzato per fare il debug delle nostre applicazioni:

  • Quando la tua applicazione utilizza un'API che richiede HTTPS (come la Web Crypto API o altre librerie di terze parti che richiedono HTTPS)
  • Quando un servizio di terze parti che vuoi integrare richiede di fornire un'interfaccia API basata su HTTPS accessibile globalmente, e hai bisogno di fare il debug di questa interfaccia

Esistono molte soluzioni a questi problemi sul mercato, ma la maggior parte di esse è complessa e soggetta a errori. Qui, vorrei introdurre come utilizzare Cloudflare Tunnel per utilizzare rapidamente HTTPS e hostname personalizzato per lo sviluppo locale.

Cos'è Cloudflare Tunnel

Cloudflare Tunnel è un servizio fornito da Cloudflare che ti permette di connettere in sicurezza la tua infrastruttura alla rete Cloudflare. Essenzialmente crea una connessione sicura ed efficiente tra i tuoi server e la rete globale di Cloudflare, assicurando che il tuo traffico web sia protetto e ottimizzato.

Utilizzando Cloudflare Tunnel, puoi facilmente connettere la tua macchina di sviluppo locale alla rete globale di Cloudflared. Dopodiché, puoi ospitare il tuo dominio su Cloudflare e inoltrare le richieste per il dominio alla tua macchina locale tramite il Cloudflare Tunnel.

Prerequisito

Prima di iniziare, assicurati di:

  • Possedere già un nome di dominio e aver disabilitato DNSSEC presso il tuo registrar (dove hai acquistato il tuo nome di dominio).
  • Aver precedentemente creato un account Cloudflare.

Nota: In questo tutorial, per scopi dimostrativi, assumiamo di usare demo.com come nostro dominio.

Aggiungi un sito web a Cloudflare

Innanzitutto, devi accedere al dashboard di Cloudflare utilizzando il tuo account Cloudflare e selezionare l'opzione "Sito web" dal menu a sinistra. Quindi, fai clic sul pulsante "Inizia" sulla pagina (se esiste già un record, fai clic su "Aggiungi sito web"). Segui le istruzioni per completare l'aggiunta del sito web utilizzando il dominio che possiedi. Dopo aver aggiunto con successo il sito, vedrai il seguente contenuto:

Sito web (inattivo)

Come mostrato nella figura, il sito web aggiunto non è ancora stato attivato. È necessario seguire la guida sulla pagina per accedere al registrar del tuo dominio e aggiornare i nameserver del dominio per attivare il tuo sito web.

Prendendo il dominio su Godaddy come esempio:

Entra nella pagina delle impostazioni del dominio, accedi all'opzione “Nameservers” sotto la scheda DNS, e cambia i Nameserver con i valori visualizzati nella guida:

Impostazioni nameservers

Dopo la modifica, attendi per un breve periodo, e il sito web corrispondente su Cloudflare sarà attivato:

Sito web attivo

Dopo aver configurato questi contenuti, il tuo dominio verrà ospitato su Cloudflare, e Cloudflare abiliterà automaticamente HTTPS per il dominio.

Crea tunnel

Torna alla home page del Dashboard Cloudflare, clicca su "Zero Trust" nel menu a sinistra, e seleziona "Tunnels" sotto la directory 'Access'. Poi, clicca su "Aggiungi un tunnel" sulla pagina e inserisci un nome qualsiasi per il tunnel (es. my-dev-tunnel). Secondo le indicazioni sulla pagina, collega la tua macchina di sviluppo locale al tunnel Cloudflare.

Installazione tunnel

Prendendo MacOS come esempio, apri un terminale ed esegui il comando visualizzato sulla pagina:

Se la tua macchina ha già installato "cloudflared" in precedenza, non è necessario eseguire brew install cloudflare/cloudflare/cloudflared.

Tunnel installato

Dopo di ciò, esegui cloudflared tunnel list nel tuo terminale e vedrai che la tua macchina è già connessa al tunnel:

Elenca tunnel

Instrada il traffico al tunnel creato

Dopo aver creato il Tunnel, configureremo le regole di routing per il Tunnel.

Supponiamo che la nostra applicazione locale stia girando sulla porta http://localhost:3000, e vogliamo inoltrare tutte le richieste per https://dev.demo.com alla porta dove l'applicazione locale sta girando.

Innanzitutto, torniamo alla pagina del tunnel, troviamo il tunnel che abbiamo appena creato, clicchiamo sul pulsante con i tre puntini sulla destra e selezioniamo "Config".

Voce di configurazione

Compila la configurazione pertinente secondo i nostri requisiti:

Pagina di aggiunta hostname pubblico

Questa configurazione indirizza l'indirizzo dev.demo.com a http://localhost:3000 sulla nostra macchina. Quindi clicca su "Salva hostname".

Dopo un breve periodo di attesa, accedi a https://dev.demo.com, e vedrai l'app in esecuzione sulla nostra macchina locale:

App locale

Attraverso questo tutorial, dovresti ora essere in grado di implementare facilmente HTTPS e hostname personalizzato nel tuo ambiente di sviluppo locale senza doverti preoccupare di configurazioni complesse ed errori. Spero che tu possa trarre vantaggio da questo tutorial!