![]() |
Chi sviluppa sa che localhost è un posto sicuro.
È la nostra sandbox, il nostro piccolo mondo isolato dove tutto funziona (più o meno) finché non dobbiamo mostrarlo a qualcun altro.
Poi arriva il momento fatidico:
“Mi fai vedere il progetto?”
E improvvisamente ci ricordiamo che il nostro capolavoro vive solo sul nostro portatile.
È qui che entra in scena Ngrok, un piccolo strumento che fa una cosa semplicissima ma potentissima: rende accessibile il tuo server locale da Internet.
🚀 Cos’è Ngrok (in parole semplici)
Ngrok crea un tunnel sicuro tra il tuo computer e un dominio pubblico temporaneo.
In pratica, se stai sviluppando un sito su localhost:3000, con un solo comando puoi ottenere un URL pubblico tipo:
https://magical-tiger.ngrok.io
Chiunque visiti quel link vedrà esattamente ciò che gira sulla tua macchina.
Nessun deploy, nessun server remoto, nessuna configurazione di rete. Solo pura magia.
🔧 Come si usa
- Installa Ngrok (su macOS, Linux o Windows):
oppure scaricalo da ngrok.com.brew install ngrok/ngrok/ngrok - Autenticati (solo la prima volta):
ngrok config add-authtoken <IL_TUO_TOKEN> - Avvia il tunnel verso il tuo server locale, ad esempio sulla porta 3000:
ngrok http 3000
Ngrok ti mostrerà due URL: uno in http e uno in https.
Da quel momento, chiunque potrà accedere al tuo sito locale tramite quell’indirizzo.
🧠 Esempio pratico: testare un webhook in locale
Poniamo che tu stia sviluppando un’app Express che riceve notifiche da GitHub.
Ecco un esempio minimalista:
import express from "express";
const app = express();
app.use(express.json());
app.post("/webhook", (req, res) => {
console.log("Webhook ricevuto:", req.body);
res.sendStatus(200);
});
app.listen(5000, () => console.log("Server locale su http://localhost:5000"));
Ora vuoi testarlo con un webhook di GitHub.
Il problema: GitHub non può raggiungere localhost.
La soluzione:
ngrok http 5000
Ngrok ti restituirà un URL come:
https://curious-fox.ngrok.io
Nel pannello di GitHub, imposta il webhook così:
- Payload URL: https://curious-fox.ngrok.io/webhook
- Content type: application/json
Fai un push, e voilà — il tuo server locale riceve l’evento in tempo reale.
🧭 Bonus: la dashboard segreta
Ngrok include anche una mini dashboard di debug all’indirizzo
👉 http://localhost:4040
Da lì puoi:
- vedere tutte le richieste ricevute,
- analizzare header e body,
- reinv iare webhook per testare il tuo codice.
È come un piccolo Postman integrato, sempre pronto.
⚙️ Perché usarlo
- ✅ Perfetto per testare API e webhook
- 👀 Ideale per mostrare un progetto a un cliente o un collega
- 🧩 Utile per debug, demo o prototipi rapidi
- 🔒 Sicuro, con connessioni HTTPS automatiche
🧩 Alternative
Ngrok è il re del tunneling, ma ci sono valide alternative open source:
- LocalTunnel – gratuito e semplicissimo
- Cloudflare Tunnel – orientato alla produzione
- Expose – con interfaccia elegante e gestione self-hosted
🏁 Conclusione
Ngrok è uno di quegli strumenti che non sai di volere finché non lo provi.
Trasforma in un attimo il tuo ambiente locale in una finestra sul web.
Non sostituisce un vero deploy, ma quando serve “aprire un buco temporaneo” tra localhost e il mondo, fa il suo lavoro con stile.
🌍 Perché a volte, anche il tuo localhost ha bisogno di farsi un giro online.
Follow me #techelopment
Official site: www.techelopment.it
facebook: Techelopment
instagram: @techelopment
X: techelopment
Bluesky: @techelopment
telegram: @techelopment_channel
whatsapp: Techelopment
youtube: @techelopment
