Hello all,
I figured that a chunk of the selfhost community is using Caddy, so decided to post my query here. I am a novice in Caddy, so I might be saying some incorrect terms.
Some information
- The router and the host running Caddy, are different machines
- The router page is running HTTP, but I am accessing it via HTTPS through Caddy
- Caddy is running via Docker.
I have a couple of services running on a host, so I access them via Caddy’s reverse proxy. Now I am also trying to access my router login via the same reverse proxy. This is what the router entry in the caddyfile looks like
.
.
{
local_certs
}
login.router.lan {
reverse_proxy 192.168.1.1:80
}
.
.
With this entry, I can access the login page. However, when I enter the password, I feel like it’s attempting to login but then it just comes back to the original login page. When I access it directly, the login is successful. I also have Pihole running and the Pihole login process works fine. So I suspect that the router login page is expecting some extra information from Caddy to forward it to the login page.
After some searching online and some LLM wrangling, I figured it’s some cookie issue or my login page is expecting a certain host.
What should I add to my Caddyfile so that the login redirect works?
Edit: Clarification! Everything is behind wireguard. Nothing is exposed to public (other than wireguard). I only access it within my home. The router login page cannot be accessed from outside.


Does accessing your router page via caddy work when you’re actually on your home network and not accessing it via wireguard? Have you tried a different web browser to rule out your LLM suggested cookie issues entirely?
Unfortunately no, which rules out an issue with wireguard.
It’s not the stale cookie issue which goes away when opening a website in incognito. I think it expects the cookie to have the original host information.
Let me paste the list of issues the LLM mentioned. The following section is from the LLM
<LLM></LLM>It has also mentioned some solutions for each cause. But I don’t want to blindly apply them without knowing what is wrong.
My best suggestion would be to try enabling web sockets and see if it changes anything. I did find a post for a similar issue that someone was having with a different reverse proxy, but I’m not sure if it’ll be helpful.
https://github.com/NginxProxyManager/nginx-proxy-manager/issues/2099