localhost:3000: qué es y cómo solucionarlo

localhost:3000

localhost:3000: qué es y cómo arreglar conexión rechazada o puerto en uso | We.Inc

Qué significa localhost:3000, qué servidores de desarrollo usan el puerto 3000 por defecto y los comandos de Mac, Linux y Windows que solucionan los errores de conexión rechazada y de dirección ya en uso.

localhost:3000 es un servidor web que se ejecuta en tu propio ordenador y escucha en el puerto 3000. Next.js, el ejemplo hello world de Express y Rails usan ese puerto por defecto. Si la página rechaza la conexión, no hay nada escuchando ahí. Si el servidor no arranca, otro proceso ya ocupa el puerto, y puedes encontrarlo y detenerlo.

¿Qué error tienes?

localhost siempre significa esta máquina, y el número que va después de los dos puntos elige con qué programa de ella hablas. Casi todos los problemas con el puerto 3000 vienen de uno de dos problemas opuestos: no hay ningún servidor ahí, o dos servidores lo quieren a la vez. Escribe un puerto abajo para obtener los comandos de tu sistema.

Preguntas frecuentes

¿Qué es localhost:3000?

localhost es el nombre de tu propio ordenador, normalmente 127.0.0.1 o ::1, y 3000 es un número de puerto. Juntos apuntan a un servidor que se ejecuta en local, casi siempre un servidor de desarrollo de una app web. Nadie más en internet puede abrir tu URL de localhost.

¿Por qué localhost:3000 dice que rechazó la conexión?

Ningún programa está aceptando conexiones en ese puerto. Puede que el servidor de desarrollo no esté en marcha, que se haya caído con un error o que esté escuchando en otro puerto, como el 5173. Revisa el terminal donde lo arrancaste.

¿Cómo soluciono que el puerto 3000 ya esté en uso?

Busca el proceso que ocupa el puerto con lsof en Mac o Linux, o con netstat -ano en Windows, y detenlo con kill o taskkill. O arranca tu app en otro puerto, por ejemplo next dev -p 3001.

¿Cómo cambio el puerto en Next.js?

Pasa -p, como en next dev -p 4000, o define la variable de entorno PORT al ejecutar el comando. La documentación de Next.js indica que PORT no se puede definir dentro de un archivo .env, porque el servidor arranca antes de leer ese archivo.

¿Puede otra persona abrir mi localhost:3000?

No a través de esa dirección, porque localhost en su máquina significa su propio ordenador. Para compartirlo en tu red, el servidor debe escuchar en todas las interfaces y los demás usan la IP local de tu máquina y el puerto.

Los puertos en un párrafo

Conexión rechazada, paso a paso

Puertos por defecto de los servidores de desarrollo

Valores por defecto según la documentación de cada herramienta, octubre de 2026

Gestiona un puerto ocupado en tu propio servidor

Leer el puerto de PORT e informar de EADDRINUSE con claridad

Un pequeño servidor Express que usa el 3000 si no hay otro y muestra un mensaje legible cuando el puerto está ocupado.

macOS y Linux

Lista el proceso que escucha en el puerto y detenlo por su PID (la segunda columna).

Windows (Símbolo del sistema)

Muestra las conexiones con sus ID de proceso, filtra por el puerto y finaliza ese PID.

O usa otro puerto

Deja el otro proceso tranquilo y arranca tu app en un puerto libre.

Liberar un puerto

Puerto

Los puertos van del 1 al 65535. Se muestran los comandos para el 3000.

Copiar

Empieza gratis · Sin tarjeta de crédito

Relacionado: Guías

Producto

Para quién es

Funciones

Recursos

Empresa

Mapa del sitio