mirror of
https://github.com/fosrl/pangolin.git
synced 2026-07-16 06:08:33 -05:00
[GH-ISSUE #379] Support for Multiple Path-Based Proxies within a Single Resource #1421
Reference in New Issue
Block a user
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Originally created by @bannert1337 on GitHub (Mar 21, 2025).
Original GitHub issue: https://github.com/fosrl/pangolin/issues/379
It would be extremely useful if Pangolin could support path-based routing within a single HTTP resource. Currently, Pangolin allows exposing resources as HTTP endpoints tied to an entire subdomain, but some use cases require a single tunnel to route traffic to different internal services based on URL paths.
For example, when proxying connections for Netbird, the following endpoints are needed:
https://docs.netbird.io/selfhosted/selfhosted-guide#configuration-for-your-reverse-proxy
Netbird expects these endpoints to be accessible under a single hostname, but Pangolin’s current configuration forwards all requests to one destination. Without support for routing based on paths, there are two workarounds:
It is worth noting that while oschwartz10612’s suggestion to use the new beta rule feature (as discussed in the related issue #236/discussion #238) helps manage URL path restrictions, it does not provide the full-fledged path-based routing necessary for Netbird, in which different URL paths on the same hostname must be selectively routed to distinct internal services. The previous discussion focused on restricting access to specific endpoints (e.g., allowing only
/script.jsand/api/ingress), whereas Netbird needs multiple internally differentiated targets rather than simply restricting access.Adding native support for path-based routing directly within Pangolin would simplify deployments by eliminating the need for an extra reverse proxy or subdomain changes and would directly address the Netbird use case.
Would it be possible to add this as a feature request? Thank you for considering this enhancement, and please let me know if you require any additional details or use case examples.