The problem is that by the time subsonic gets around to using SSL it is no longer using the name at all...
Recall that the redirect works like this:
- Your computer tries to contact http://MyCustomDomain.subsonic.org. It does so by looking up the ip address using the DNS system (which is always 66.49.215.227) and then contacting that IP address using the host header of "MyCustomDomain.subsonic.org"
- The subsonic.org web server receives that connection and looks up the host header provided in its database to find out your real current ip address, your real HTTP port, and your real context path.
- The server then sends back a message to the browser that says "The page that you are trying to retrieve is temporarily unavailable. Why don't you try this address: http://your.real.ip.address:yourHTTPPort/YourContextPath ?"
- Your browser receives this message and attempts to contact that ip address port and context path but passes no host header information. This is your real live server at home.
- Your server receives this connection and says "hey, I'm set up for HTTPS." It then send another message similar to the first one... "The page that you are trying to retrieve is temporarily unavailable. Why don't you try this address: https://your.real.ip.address:yourHTTPSPort/YourContextPath ?"
- Your browser tries to contact that ip address and port and context path (again with no host header information), but this time it uses SSL encrypted communication. In order to do that, it asks your server for it's certificate and checks the certificate's name against the address that it is trying to connect to. If they don't match, a security warning ensues.
So I can't see any way to make it work unless the certificate has been generated for that specific IP address, and that IP address never changes.
I'd love to be proven wrong, but I'm not going to spend the money to do so...
Cheerio,
Glenn