[{"data":1,"prerenderedAt":256},["ShallowReactive",2],{"content-query-18eRYaT4zW":3,"reference-index-/localhost":150},{"_path":4,"_dir":5,"_draft":6,"_partial":6,"_locale":5,"title":7,"description":8,"layout":9,"cta":10,"related":18,"body":31,"_type":143,"_id":144,"_source":145,"_file":146,"_stem":147,"_extension":148,"sitemap":149},"/localhost","",false,"Localhost ports: what runs on each port and how to fix it","Which dev server or database uses localhost:3000, 8080, 5173 and other common ports, how to fix 'refused to connect', and how to share a local port publicly.","reference",{"eyebrow":11,"title":12,"text":13,"to":14,"label":15,"secondaryTo":16,"secondaryLabel":17},"Webhook Relay Tunnels","Give any local port a public HTTPS URL","relay connect forwards a stable public HTTPS address to localhost:3000, 5173, 8080 or any other port, with no router changes or public IP. relay forward does the same for incoming webhooks.","/tunnels/","Explore Tunnels","/docs/webhooks/internal/localhost/","Receive webhooks on localhost",[19,22,25,28],{"title":20,"to":21},"HTTP errors explained","/http-errors/",{"title":23,"to":24},"Webhook glossary","/glossary/",{"title":26,"to":27},"What is a tunnel?","/glossary/tunnel/",{"title":29,"to":30},"Receive webhooks on localhost: 5 ways","/blog/receive-webhooks-on-localhost/",{"type":32,"children":33,"toc":139},"root",[34,83,87,94,99],{"type":35,"tag":36,"props":37,"children":38},"element","p",{},[39,42,48,50,57,59,65,67,73,75,81],{"type":40,"value":41},"text","Every local dev server listens on a ",{"type":35,"tag":43,"props":44,"children":45},"strong",{},[46],{"type":40,"value":47},"port",{"type":40,"value":49},": React and Next.js on ",{"type":35,"tag":51,"props":52,"children":54},"code",{"className":53},[],[55],{"type":40,"value":56},"localhost:3000",{"type":40,"value":58},", Vite on ",{"type":35,"tag":51,"props":60,"children":62},{"className":61},[],[63],{"type":40,"value":64},"5173",{"type":40,"value":66},", Angular on ",{"type":35,"tag":51,"props":68,"children":70},{"className":69},[],[71],{"type":40,"value":72},"4200",{"type":40,"value":74},", Jupyter on ",{"type":35,"tag":51,"props":76,"children":78},{"className":77},[],[79],{"type":40,"value":80},"8888",{"type":40,"value":82},". Pick a port to see what runs there, how to fix it and how to share it.",{"type":35,"tag":84,"props":85,"children":86},"reference-index",{"section":4},[],{"type":35,"tag":88,"props":89,"children":91},"h3",{"id":90},"what-each-page-covers",[92],{"type":40,"value":93},"What each page covers",{"type":35,"tag":36,"props":95,"children":96},{},[97],{"type":40,"value":98},"Each page says what usually runs on that port, how to start it, how to find and free the port when something else is holding it, and how to open it from another device. The last section covers sharing it with anyone on the internet over an HTTPS URL.",{"type":35,"tag":36,"props":100,"children":101},{},[102,108,110,116,118,129,131,137],{"type":35,"tag":51,"props":103,"children":105},{"className":104},[],[106],{"type":40,"value":107},"localhost",{"type":40,"value":109}," always means ",{"type":35,"tag":111,"props":112,"children":113},"em",{},[114],{"type":40,"value":115},"this machine",{"type":40,"value":117},": it resolves to the loopback address ",{"type":35,"tag":119,"props":120,"children":122},"a",{"href":121},"/localhost/127-0-0-1/",[123],{"type":35,"tag":51,"props":124,"children":126},{"className":125},[],[127],{"type":40,"value":128},"127.0.0.1",{"type":40,"value":130}," (or ",{"type":35,"tag":51,"props":132,"children":134},{"className":133},[],[135],{"type":40,"value":136},"::1",{"type":40,"value":138}," on IPv6), and nothing outside your computer can reach it until you forward or tunnel the port.",{"title":5,"searchDepth":140,"depth":140,"links":141},3,[142],{"id":90,"depth":140,"text":93},"markdown","content:localhost:index.md","content","localhost/index.md","localhost/index","md",{"loc":4},[151,158,165,172,178,185,192,200,207,214,221,228,235,242,249],{"_path":152,"title":153,"description":154,"crumb":128,"summary":155,"group":156,"order":157},"/localhost/127-0-0-1","127.0.0.1: the loopback address and localhost explained","127.0.0.1 is the IPv4 loopback address: it always points to your own computer. How it relates to localhost, ::1 and 0.0.0.0, and fixing refused connections.","The loopback address, localhost, ::1 and 0.0.0.0.","Basics",0,{"_path":159,"title":160,"description":161,"crumb":56,"summary":162,"group":163,"order":164},"/localhost/3000","localhost:3000 — what runs on port 3000 and how to fix it","localhost:3000 is the default dev port for React, Next.js, Nuxt, Rails and Express. Fix 'refused to connect', free a busy port 3000, and share it publicly.","React, Next.js, Nuxt, Rails, Express and Grafana.","Web frameworks",1,{"_path":166,"title":167,"description":168,"crumb":169,"summary":170,"group":163,"order":171},"/localhost/3001","localhost:3001: what runs on port 3001 and how to fix it","localhost:3001 is where Next.js and other dev servers go when 3000 is busy, plus BrowserSync UI and Uptime Kuma. Fix 'refused to connect' and free port 3001.","localhost:3001","Second dev server, API next to a frontend, BrowserSync UI, Uptime Kuma.",6,{"_path":173,"title":174,"description":175,"crumb":176,"summary":177,"group":163,"order":140},"/localhost/4200","localhost:4200: the Angular dev server port and how to fix it","localhost:4200 is the default port for Angular's ng serve. Fix 'refused to connect', free a busy port 4200, open it from your phone and share it publicly.","localhost:4200","Angular CLI dev server (ng serve).",{"_path":179,"title":180,"description":181,"crumb":182,"summary":183,"group":163,"order":184},"/localhost/5000","localhost:5000: Flask port, macOS AirPlay conflict and fixes","localhost:5000 is Flask's default port, but on macOS AirPlay Receiver also uses port 5000. Fix 403 and 'address already in use', and share 5000 publicly.","localhost:5000","Flask, ASP.NET Core (Kestrel fallback), Docker Registry, macOS AirPlay.",5,{"_path":186,"title":187,"description":188,"crumb":189,"summary":190,"group":163,"order":191},"/localhost/5173","localhost:5173: the Vite dev server port and how to fix it","localhost:5173 is the Vite dev server default port for React, Vue, Svelte and SvelteKit. Fix 'refused to connect', blocked hosts, and share 5173 publicly.","localhost:5173","Vite dev server (React, Vue, Svelte, SvelteKit).",2,{"_path":193,"title":194,"description":195,"crumb":196,"summary":197,"group":198,"order":199},"/localhost/5432","localhost:5432: the PostgreSQL default port and connection fixes","5432 is the PostgreSQL default port. Fix 'connection refused on localhost:5432', free a busy port, change it, and connect remotely without exposing Postgres.","localhost:5432","PostgreSQL (psql, Postgres.app, Docker postgres).","Data, AI and automation",13,{"_path":201,"title":202,"description":203,"crumb":204,"summary":205,"group":198,"order":206},"/localhost/5678","localhost:5678: n8n's default port and webhook URLs explained","localhost:5678 is n8n's default port. Fix 'refused to connect', change N8N_PORT, and make n8n webhooks work on localhost with WEBHOOK_URL or a relay.","localhost:5678","n8n workflow automation (editor and webhooks).",12,{"_path":208,"title":209,"description":210,"crumb":211,"summary":212,"group":163,"order":213},"/localhost/8000","localhost:8000: Django, Python, Laravel and FastAPI dev port","localhost:8000 is the default port for Django runserver, python -m http.server, Laravel artisan serve and uvicorn. Fix 'refused to connect' and share it.","localhost:8000","Django, python -m http.server, Laravel, FastAPI/uvicorn, Gatsby.",4,{"_path":215,"title":216,"description":217,"crumb":218,"summary":219,"group":163,"order":220},"/localhost/8080","localhost:8080: what runs on port 8080 and how to fix it","localhost:8080 is the default port for Tomcat, Jenkins, Spring Boot and many Docker images. Fix 'refused to connect', free a busy port 8080 and share it.","localhost:8080","Tomcat, Jenkins, Spring Boot, Vue CLI and many Docker images.",7,{"_path":222,"title":223,"description":224,"crumb":225,"summary":226,"group":163,"order":227},"/localhost/8081","localhost:8081: React Native Metro, Expo and alt HTTP port","localhost:8081 is the React Native Metro bundler and Expo dev server port, plus Nexus and alt HTTP. Fix 'port 8081 already in use' and connect a device.","localhost:8081","React Native Metro, Expo, Nexus Repository, second HTTP server.",8,{"_path":229,"title":230,"description":231,"crumb":232,"summary":233,"group":198,"order":234},"/localhost/8123","localhost:8123: Home Assistant's default port and remote access","localhost:8123 is Home Assistant's default port. Fix 'refused to connect' and 400 Bad Request behind a proxy, change the port and get remote access.","localhost:8123","Home Assistant (homeassistant.local:8123).",14,{"_path":236,"title":237,"description":238,"crumb":239,"summary":240,"group":198,"order":241},"/localhost/8888","localhost:8888: the Jupyter Notebook port and how to fix it","localhost:8888 is the default port for Jupyter Notebook and JupyterLab. Fix 'refused to connect', token prompts and busy ports, and reach Jupyter remotely.","localhost:8888","Jupyter Notebook and JupyterLab.",10,{"_path":243,"title":244,"description":245,"crumb":246,"summary":247,"group":163,"order":248},"/localhost/9000","localhost:9000: PHP-FPM, SonarQube, MinIO and Portainer port","localhost:9000 is the default port for PHP-FPM, SonarQube, the MinIO S3 API and legacy Portainer. Find out what's on port 9000, fix errors and free it.","localhost:9000","PHP-FPM, SonarQube, MinIO API, Portainer (legacy), ClickHouse.",9,{"_path":250,"title":251,"description":252,"crumb":253,"summary":254,"group":198,"order":255},"/localhost/11434","localhost:11434: Ollama's default port and API explained","Ollama's default port is 11434. How to check the Ollama API on localhost:11434, change it with OLLAMA_HOST, fix CORS with OLLAMA_ORIGINS and expose it safely.","localhost:11434","Ollama local LLM API (OLLAMA_HOST, OLLAMA_ORIGINS).",11,1793199699855]