Added trust_xheaders config option to delegate it to HTTPServer.

This is neccesary if the notebook app is proxied behind a reverse
proxy that handles SSL.
pull/37/head
Alberto Valverde 13 years ago
parent 6a39864c54
commit 9e38b20e8f

@ -456,6 +456,11 @@ class NotebookApp(BaseIPythonApplication):
config=True,
help='The notebook manager class to use.')
trust_xheaders = Bool(False, config=True,
help=("Whether to trust or not X-Scheme/X-Forwarded-Proto and X-Real-Ip/X-Forwarded-For headers"
"sent by the upstream reverse proxy. Neccesary if the proxy handles SSL")
)
def parse_command_line(self, argv=None):
super(NotebookApp, self).parse_command_line(argv)
if argv is None:
@ -508,7 +513,8 @@ class NotebookApp(BaseIPythonApplication):
else:
ssl_options = None
self.web_app.password = self.password
self.http_server = httpserver.HTTPServer(self.web_app, ssl_options=ssl_options)
self.http_server = httpserver.HTTPServer(self.web_app, ssl_options=ssl_options,
xheaders=self.trust_xheaders)
if not self.ip:
warning = "WARNING: The notebook server is listening on all IP addresses"
if ssl_options is None:

Loading…
Cancel
Save