Dangling Route
Dangling routes accumulate over time as services are added, renamed, or removed without updating the reverse proxy configuration. Nginx does not validate that upstream servers exist at startup — it will start successfully even if every defined upstream is unreachable.
In Traefik with Docker labels, dangling routes occur when a container is removed but the Nginx config referencing it was not updated. In static Nginx configurations, they occur when services are moved to different ports or hostnames without updating the proxy_pass directive.
Impact
End users see 502 (bad gateway) or 504 (gateway timeout) errors. The reverse proxy server logs are flooded with upstream connection failures. Health check monitors flag the service as down. In some configurations, Traefik will continue attempting connections to removed backends, consuming resources.
Detection
ConfigClarity's Reverse Proxy Mapper analyses your nginx.conf or Docker Compose labels, extracts all defined upstream targets, and flags any that don't correspond to a running service definition in the same config file.
Related Tools
Fix Guides
Frequently Asked Questions
proxy_pass http://removed-service:port. Docker removes the DNS entry for the removed service, but Nginx's config is not automatically updated.nginx -t but does not check whether upstream servers are reachable at startup. The error only appears at runtime when a request is made to the dangling route.proxy_pass targets and cross-references them against the upstream definitions and Docker service names defined in the same config.