Skip to content
GitLab
Projects Groups Snippets
  • /
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
  • Sign in
  • S sickrage
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 27
    • Issues 27
    • List
    • Boards
    • Service Desk
    • Milestones
  • Merge requests 1
    • Merge requests 1
  • Deployments
    • Deployments
    • Releases
  • Packages and registries
    • Packages and registries
    • Container Registry
  • Monitor
    • Monitor
    • Incidents
  • Analytics
    • Analytics
    • Value stream
    • Repository
  • Wiki
    • Wiki
  • Activity
  • Graph
  • Create a new issue
  • Commits
  • Issue Boards
Collapse sidebar
  • SiCKRAGESiCKRAGE
  • sickrage
  • Issues
  • #244
Closed
Open
Issue created Jul 29, 2018 by Sylvain Monné@bidord

handle_reverse_proxy = 1 has no effect

Summary
Setting option handle_reverse_proxy = 1 has no effect. In particular redirection during SSO login does not take header X-Scheme/X-Forwarded-Proto into account.

Branch/Commit
master/e233cb68

OS
Ubuntu 18.04.1 LTS

Steps to reproduce

  • Configure sickrage behind a reverse proxy configured to send X-Forwarded-Proto: https header.
    Apache configuration example :

<VirtualHost *:443> ServerName sickrage.example.com

  SSLEngine on
  SSLCertificateFile /etc/letsencrypt/live/sickrage.example.com/fullchain.pem
  SSLCertificateKeyFile /etc/letsencrypt/live/sickrage.example.com/privkey.pem

  ProxyPass / http://localhost:8081/
  ProxyPassReverse / http://localhost:8081/
  ProxyPreserveHost on
  RequestHeader set X-Forwarded-Proto "https"
```
  • Set handle_reverse_proxy = 1

  • Login

What is the current bug behavior?
After SSO login, redirection URL is to http://sickrage.example.com/

What is the expected correct behavior?
Redirection should be to https://sickrage.example.com/

Relevant logs and/or screenshots
N/A

Possible fixes
The following patch solves the issue:

diff --git a/sickrage/core/webserver/__init__.py b/sickrage/core/webserver/__init__.py
index e9aaf1e11..e9d87e42d 100644
--- a/sickrage/core/webserver/__init__.py
+++ b/sickrage/core/webserver/__init__.py
@@ -164,11 +164,10 @@ class WebServer(object):
             debug=True,
             autoreload=False,
             gzip=sickrage.app.config.web_use_gzip,
-            xheaders=sickrage.app.config.handle_reverse_proxy,
             cookie_secret=sickrage.app.config.web_cookie_secret,
             login_url='%s/login/' % sickrage.app.config.web_root)

-        self.server = HTTPServer(self.app, no_keep_alive=True)
+        self.server = HTTPServer(self.app, no_keep_alive=True, xheaders=sickrage.app.config.handle_reverse_proxy)

         if sickrage.app.config.enable_https: self.server.ssl_options = {
             "certfile": sickrage.app.config.https_cert,
Edited Jul 29, 2018 by Sylvain Monné
Assignee
Assign to
Time tracking