diff --git a/wsgi.py b/wsgi.py new file mode 100644 index 0000000..4d22b47 --- /dev/null +++ b/wsgi.py @@ -0,0 +1,23 @@ +from werkzeug.exceptions import NotFound +from werkzeug.middleware.dispatcher import DispatcherMiddleware +from werkzeug.middleware.proxy_fix import ProxyFix + +from communicator import app + +if __name__ == "__main__": + def no_app(environ, start_response): + return NotFound()(environ, start_response) + + # Remove trailing slash, but add leading slash + base_url = '/' + app.config['APPLICATION_ROOT'].strip('/') + routes = {'/': app.wsgi_app} + + if base_url != '/': + routes[base_url] = app.wsgi_app + + app.wsgi_app = DispatcherMiddleware(no_app, routes) + app.wsgi_app = ProxyFix(app.wsgi_app) + + flask_port = app.config['FLASK_PORT'] + + app.run(host='0.0.0.0', port=flask_port)