-
-
Notifications
You must be signed in to change notification settings - Fork 384
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Reverse proxy with SSL not working with Hyperion.ng #923
Comments
@m33ts4k0z not sure what is the problem with binary...? |
@Lord-Grey Sorry how can I update the file? I don't have access to do that. Do you mean download it locally, edit and compile? Sorry, I'm not that familiar with GitHUB but I think i got what you mean :) I will recompile with my fixes and once I'm happy with the result, I will make a pull request. |
Fork this repo to your account, make the changes, then you can submit a Pull request from your changed repo to our repo :-) |
I have now implemented and tested a fix that should cover all cases. |
After the fix is applied, you can use this configuration for Nginx reverse proxy. It includes auto SSL redirection and support for certbot certificate auto renewal if you use Let's Encrypt. |
unraid ftw 👍 |
Hello,
I saw a similar issue some months ago that it was immediately closed as a non-hyperion issue. Actually it is a hyperion issue and is really easy to fix. The problem lies in the hyperion.js file:
window.jsonPort = (document.location.port == '') ? '80' : document.location.port; window.websocket = (document.location.protocol == "https:") ? new WebSocket('wss://'+document.location.hostname+":"+window.jsonPort) : new WebSocket('ws://'+document.location.hostname+":"+window.jsonPort);
When a proxy_pass is performed through a reverse proxy, the address bar doesnt have a port. that makes Hyperion WebSocket default to 80. So HTTP works. On the other hand, when SSL is used, Hyperion is again using port 80 since again the reverse proxy doesn't show a port on the address bar but that results in a protocol missmatch error. Since this file is baked into the binary, it is not easy to edit. However it would suffice if port 443 is used when https is detected.
The text was updated successfully, but these errors were encountered: