HTTP/1.1 301 Moved Permanently
Location: https://dom.tld
Content-Type: text/html
Connection: close
Select Save Proxy Settings
Observe "Settings updated successfully" dialog banner
Navigate off proxy entry
Navigate back to proxy entry
Observe custom headers field empty
Expected Behavior
Save custom header data
Originally created by @fiveangle on GitHub (Jan 20, 2026).
Original GitHub issue: https://github.com/fosrl/pangolin/issues/2284
### Describe the Bug
Custom header not saved/applied
### Environment
- OS Type & Version: Debian 13/Proxmox VE - `Linux pangolin 6.14.11-5-pve #2 SMP PREEMPT_DYNAMIC PMX 6.14.11-5 (2025-12-15T08:44Z) x86_64 GNU/Linux`
- Pangolin Version: fosrl/pangolin:ee-1.14.1
- Gerbil Version: fosrl/gerbil:1.3.0
- Traefik Version: traefik:v3.6
### To Reproduce
Create raw public proxy entry…
URI: http://sub.dom.tld:80
Target: http://dom.tld:80
Select _Create resource_
Set custom headers to:
```
HTTP/1.1 301 Moved Permanently
Location: https://dom.tld
Content-Type: text/html
Connection: close
```
Select _Save Proxy Settings_
Observe "Settings updated successfully" dialog banner
Navigate off proxy entry
Navigate back to proxy entry
Observe custom headers field empty
### Expected Behavior
Save custom header data
@oschwartz10612 commented on GitHub (Jan 20, 2026):
If you remove the following and just use the header: value format does
it work?
HTTP/1.1 301 Moved Permanently
so it should look like:
Location: https://dom.tld
Content-Type: text/html
Connection: close
<!-- gh-comment-id:3774210250 -->
@oschwartz10612 commented on GitHub (Jan 20, 2026):
If you remove the following and just use the header: value format does
it work?
HTTP/1.1 301 Moved Permanently
so it should look like:
Location: https://dom.tld
Content-Type: text/html
Connection: close
It does save the custom header contents at least, although doesn't function as expected… the resulting target is "https://dom.tld/*" rather than "https://dom.tld", resulting in a 404 from the target server
<!-- gh-comment-id:3777257172 -->
@fiveangle commented on GitHub (Jan 21, 2026):
It *does* save the custom header contents at least, although doesn't function as expected… the resulting target is "`https://dom.tld/*`" rather than "`https://dom.tld`", resulting in a 404 from the target server
@github-actions[bot] commented on GitHub (Feb 5, 2026):
This issue has been automatically marked as stale due to 14 days of inactivity. It will be closed in 14 days if no further activity occurs.
<!-- gh-comment-id:3850435118 -->
@github-actions[bot] commented on GitHub (Feb 5, 2026):
This issue has been automatically marked as stale due to 14 days of inactivity. It will be closed in 14 days if no further activity occurs.
Well, I've moved on, so will leave this issue to remain, since it appears it will be closed anyway…
<!-- gh-comment-id:3870412215 -->
@fiveangle commented on GitHub (Feb 9, 2026):
Well, I've moved on, so will leave this issue to remain, since it appears it will be closed anyway…
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Originally created by @fiveangle on GitHub (Jan 20, 2026).
Original GitHub issue: https://github.com/fosrl/pangolin/issues/2284
Describe the Bug
Custom header not saved/applied
Environment
Linux pangolin 6.14.11-5-pve #2 SMP PREEMPT_DYNAMIC PMX 6.14.11-5 (2025-12-15T08:44Z) x86_64 GNU/LinuxTo Reproduce
Create raw public proxy entry…
URI: http://sub.dom.tld:80
Target: http://dom.tld:80
Select Create resource
Set custom headers to:
Select Save Proxy Settings
Observe "Settings updated successfully" dialog banner
Navigate off proxy entry
Navigate back to proxy entry
Observe custom headers field empty
Expected Behavior
Save custom header data
@oschwartz10612 commented on GitHub (Jan 20, 2026):
If you remove the following and just use the header: value format does
it work?
HTTP/1.1 301 Moved Permanently
so it should look like:
Location: https://dom.tld
Content-Type: text/html
Connection: close
@fiveangle commented on GitHub (Jan 21, 2026):
It does save the custom header contents at least, although doesn't function as expected… the resulting target is "
https://dom.tld/*" rather than "https://dom.tld", resulting in a 404 from the target server@github-actions[bot] commented on GitHub (Feb 5, 2026):
This issue has been automatically marked as stale due to 14 days of inactivity. It will be closed in 14 days if no further activity occurs.
@fiveangle commented on GitHub (Feb 9, 2026):
Well, I've moved on, so will leave this issue to remain, since it appears it will be closed anyway…