diff --git a/enervent-ctrl-python/nginx-server-block.conf b/enervent-ctrl-python/nginx-server-block.conf index 7721af7..20a41c3 100644 --- a/enervent-ctrl-python/nginx-server-block.conf +++ b/enervent-ctrl-python/nginx-server-block.conf @@ -31,6 +31,10 @@ server { # First attempt to serve request as file, then # as directory, then fall back to displaying a 404. if ($http_user_agent ~* "^curl") { + proxy_set_header X-Forwarded-Proto $scheme; + proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; + proxy_set_header X-Forwarded-Host $host:$server_port; + proxy_set_header X-Forwarded-Port $server_port; proxy_pass http://enervent-ctrl; } try_files $uri $uri/ =404; @@ -41,6 +45,10 @@ server { #} location ~ /api { + proxy_set_header X-Forwarded-Proto $scheme; + proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; + proxy_set_header X-Forwarded-Host $host:$server_port; + proxy_set_header X-Forwarded-Port $server_port; proxy_pass http://enervent-ctrl; } diff --git a/enervent-ctrl-python/requirements.txt b/enervent-ctrl-python/requirements.txt new file mode 100644 index 0000000..7ced81f --- /dev/null +++ b/enervent-ctrl-python/requirements.txt @@ -0,0 +1,11 @@ +click==8.1.3 +Flask==2.2.2 +importlib-metadata==6.0.0 +itsdangerous==2.1.2 +Jinja2==3.1.2 +MarkupSafe==2.1.1 +minimalmodbus==2.0.1 +pyserial==3.5 +waitress==2.1.2 +Werkzeug==2.2.2 +zipp==3.11.0 diff --git a/enervent-ctrl-python/src/enervent-logger.py b/enervent-ctrl-python/src/enervent-logger.py index 0595854..cee849c 100755 --- a/enervent-ctrl-python/src/enervent-logger.py +++ b/enervent-ctrl-python/src/enervent-logger.py @@ -3,6 +3,7 @@ import logging from PingvinKL import PingvinKL from flask import Flask, request import threading +from waitress import serve VERSION = "0.0.1" DEBUG = True @@ -42,4 +43,5 @@ if __name__ == "__main__": log.info(f"Starting enervent-logger {VERSION}") datathread = threading.Thread(target=pingvin.monitor, kwargs={"interval": 15, "debug": DEBUG}) datathread.start() - app.run(host='0.0.0.0', port=8888) \ No newline at end of file + # app.run(host='0.0.0.0', port=8888) + serve(app, listen='*:8888', trusted_proxy='127.0.0.1', trusted_proxy_headers="x-forwarded-for x-forwarded-host x-forwarded-proto x-forwarded-port") \ No newline at end of file