A SSL redirector for shared hosting environments, e.g. Webfaction
A simple importd based SSL redirector. It accepts requests and redirects to the SSL version of the same page.
I needed something like this for a couple of sites that were hosted on a shared hosting provider but I wanted to only have one process doing the SSL redirects.
This launches ressl on port 8000 using Django’s runserver management command.
To use a different port, use the server’s options, e.g.:
gunicorn -b 127.0.0.1:12345 ressl
You must set at least one envrionment variable for ressl to work: RESSL_ALLOWED_HOSTS. It’s a comma separated list of host names ressl is allowed to redirect, e.g.:
RESSL_ALLOWED_HOSTS=mycompany.com,myblog.me,myphotos.com gunicorn -b 127.0.0.1:12345 ressl
Debugging is done by setting the environment variable RESSL_DEBUG to any value:
RESSL_DEBUG=yep gunicorn -b 127.0.0.1:12345 ressl
If your site runs behind a proxy, you may have to tell ressl how to figure out if a request is SSL or not. Use the RESSL_PROXY_PROTOCOL environment variable to define it (defaults to 'HTTP_X_FORWARDED_PROTOCOL'):
RESSL_PROXY_PROTOCOL=HTTP_X_FORWARDED_PROTO gunicorn ressl