Support https server

This commit is contained in:
Sheng
2018-10-14 16:15:39 +08:00
parent deef92fe66
commit 827a0d8a9d
5 changed files with 127 additions and 5 deletions
+12 -4
View File
@@ -4,8 +4,10 @@ import tornado.ioloop
from tornado.options import options
from webssh.handler import IndexHandler, WsockHandler
from webssh.settings import (get_app_settings, get_host_keys_settings,
get_policy_setting, max_body_size)
from webssh.settings import (
get_app_settings, get_host_keys_settings, get_policy_setting,
get_ssl_context, max_body_size, xheaders
)
def make_handlers(loop, options):
@@ -28,9 +30,15 @@ def main():
options.parse_command_line()
loop = tornado.ioloop.IOLoop.current()
app = make_app(make_handlers(loop, options), get_app_settings(options))
server_settings = dict(xheaders=True, max_body_size=max_body_size)
app.listen(options.port, options.address, **server_settings)
ssl_ctx = get_ssl_context(options)
kwargs = dict(xheaders=xheaders, max_body_size=max_body_size)
app.listen(options.port, options.address, **kwargs)
logging.info('Listening on {}:{}'.format(options.address, options.port))
if ssl_ctx:
kwargs.update(ssl_options=ssl_ctx)
app.listen(options.sslPort, options.sslAddress, **kwargs)
logging.info('Listening on ssl {}:{}'.format(options.sslAddress,
options.sslPort))
loop.start()