Puertos 80 y 443 ocupados
Lerd, Laravel Herd, Valet, Apache, Caddy, MAMP, DDEV o un contenedor ocupa el puerto del proxy: cómo lo nombra Joppa y propone la forma correcta de detenerlo.
El proxy de Joppa necesita el puerto 443 (HTTPS) y, para la redirección, el puerto 80. Solo un programa a la vez puede escuchar en un puerto: si otro servidor local ya los ocupa, Joppa no puede iniciar su proxy. Entonces te dice quién los ocupa y propone detenerlo a la manera de esa herramienta, nunca matando un proceso a ciegas.
El aviso
Cuando el proxy no puede iniciarse porque el puerto está ocupado, el aviso rojo de la parte superior de la ventana muestra «El puerto 443 lo ocupa …» con lo que Joppa ha encontrado: el nombre de la herramienta, el PID, el usuario y la ruta del ejecutable (o el contenedor y su runtime). El botón hace el resto: detiene al ocupante, espera a que el puerto quede libre y luego inicia el proxy.

| Ocupante | Botón | Lo que hace Joppa |
|---|---|---|
| Lerd (su nginx, en Podman) | Detener Lerd e iniciar | lerd stop |
| Laravel Herd | Detener Laravel Herd e iniciar | herd stop (sin el comando herd: cierra Herd desde su barra de menús) |
| Laravel Valet (nginx de Homebrew lanzado como root) | Detener Laravel Valet e iniciar | brew services stop nginx como root, con tu contraseña |
Apache de macOS (/usr/sbin/httpd) |
Detener Apache (macOS) e iniciar | apachectl stop, con tu contraseña |
| Servicio de Homebrew (nginx, httpd, caddy…) | Detener … e iniciar | brew services stop <fórmula> |
| Servicio de systemd (Linux: nginx, apache2, caddy…) | Detener … e iniciar | systemctl stop <unidad>, con tu contraseña |
| Caddy | Detener Caddy e iniciar | caddy stop |
| MAMP | Detener MAMP e iniciar | su script stopApache.sh, con tu contraseña |
DDEV (su router ddev-router) |
Detener DDEV e iniciar | ddev poweroff |
| Laravel Sail o Traefik, en un contenedor | Detener Laravel Sail e iniciar (o Traefik) | docker stop <contenedor> (o podman stop) |
| Otro contenedor | Detener el contenedor e iniciar | docker stop <contenedor> (o podman stop) |
| Otro proceso tuyo | Terminar … e iniciar | Le envía una señal de parada, tras confirmación |
El comando equivalente aparece junto al botón, por si prefieres ejecutarlo tú mismo. Antes de actuar, Joppa comprueba que el ocupante no ha cambiado desde que se mostró.
Cuando el ocupante es Lerd, Herd, DDEV o Sail, el aviso también propone Migrar sus sitios a Joppa…: consulta Migrar desde Lerd, Herd, DDEV o Sail.
Solo el puerto 80
Si solo el puerto 80 está ocupado, el proxy se inicia igualmente: HTTPS funciona, pero http:// ya no redirige a https://. Ajustes › Proxy nombra entonces al ocupante del puerto 80 y propone Liberar el puerto 80: Joppa lo detiene de la misma forma y luego reinicia su proxy con la redirección.
Lerd
Lerd también sirve sitios .test en los puertos 80 y 443: los dos no pueden servir a la vez. Al iniciar el proxy, si el nginx de Lerd tiene los puertos, el aviso propone Detener Lerd e iniciar.
Detener Lerd detiene sus contenedores (nginx, PHP-FPM, servicios), pero no su resolución DNS: tus dominios .test siguen apuntando a tu equipo, y Joppa la deja en su sitio (consulta La resolución de los dominios .test).