Same domain name, different ports and IPs

some context is that i serve out a wordpress site from another internal IP so i port forward port 80 to that IP. and then i port forward port 443 to the jellyfin instance. everything seems to work ok. except i get errors in the jellyfin log.

so is it possible to have https://example.com (port 443) go to one IP and then http://example.com (port 80)go to another IP

1. My Caddy version (caddy version):

Caddy V2

2. How I run Caddy:

hosting a jellyfin https server.

a. System environment:

windows 10 and server with docker

3. The problem I’m having:

In the Jellyfin console i get these errors every few minuets both on windows 10 and the docker container.

"[12:15:32] [ERR] [59] Emby.Server.Implementations.HttpServer.HttpListenerHost: Could not find handler for /web/index.html
[12:15:32] [ERR] [59] Emby.Server.Implementations.HttpServer.HttpListenerHost: Error processing request: Unable to find the specified file. URL: http://example.com/web/index.html

5. What I already tried:

so many things, different caddy files, upgrading to caddy V2…

Caddy can be configured to do what you ask, but I doubt it’ll solve your problem.

The issue is that you’re hosting two different sites on an identical hostname, split by port - specifically, the two default ports for web traffic. A huge number of clients (browsers etc) are going to make assertions as to the fact the two sites are the same when in fact they are not.

My strong advice is to instead split them up by hostname and have Caddy secure them BOTH and serve them over HTTPS. Use subdomains like so:

wordpress.example.com {
  reverse_proxy wordpress:80
}

jellyfin.example.com {
  reverse_proxy https://jellyfin:443
}
1 Like

Thanks Matt. Another Matt. We are taking over :slight_smile:

yep that’s a good workaround. although at the moment it all works. its just that its filling the console with these errors… i’ve raised it on the Jellyfin forum as well but not a lot of traction.

thanks a lot.

No worries! And yeah, it’s not an error, not really - not in the sense that the program is having problems.

It’s just that requests that are inappropriate for Jellyfin are being sent to it. Because of the fact you’ve conflated the two apps as one hostname. It’s a… logical problem, you might say.

Those “errors” are just Emby saying - someone sent me a request that doesn’t make sense, I don’t have a file for this. Perfectly standard operation, and it won’t go away until you stop your clients from making inappropriate requests. Which will happen as soon as you separate them by hostname.

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.