From 5d81846c5db1095c3aa6770d889e351cbcd6962c Mon Sep 17 00:00:00 2001 From: Dimitri Huisman Date: Tue, 26 Oct 2021 11:30:06 +0000 Subject: [PATCH] Introduce the shared stub /static for providing all static files --- core/admin/Dockerfile | 2 +- core/admin/mailu/__init__.py | 3 ++- core/admin/mailu/sso/templates/base_sso.html | 12 ++++++------ core/admin/mailu/static_files/__init__.py | 5 +++++ core/admin/mailu/ui/templates/base.html | 12 ++++++------ core/nginx/conf/nginx.conf | 14 +------------- 6 files changed, 21 insertions(+), 27 deletions(-) create mode 100644 core/admin/mailu/static_files/__init__.py diff --git a/core/admin/Dockerfile b/core/admin/Dockerfile index fbe98fea..ed0e7f3b 100644 --- a/core/admin/Dockerfile +++ b/core/admin/Dockerfile @@ -38,7 +38,7 @@ RUN set -eu \ && pip3 install -r requirements.txt \ && apk del --no-cache build-dep -COPY --from=assets static ./mailu/ui/static +COPY --from=assets static ./mailu/static_files/static COPY mailu ./mailu COPY migrations ./migrations COPY start.py /start.py diff --git a/core/admin/mailu/__init__.py b/core/admin/mailu/__init__.py index cbb5f769..295d2cfd 100644 --- a/core/admin/mailu/__init__.py +++ b/core/admin/mailu/__init__.py @@ -58,10 +58,11 @@ def create_app_from_config(config): ) # Import views - from mailu import ui, internal, sso + from mailu import ui, internal, sso, static_files app.register_blueprint(ui.ui, url_prefix='/ui') app.register_blueprint(internal.internal, url_prefix='/internal') app.register_blueprint(sso.sso, url_prefix='/sso') + app.register_blueprint(static_files.static, url_prefix='/static') return app diff --git a/core/admin/mailu/sso/templates/base_sso.html b/core/admin/mailu/sso/templates/base_sso.html index 062adf36..913a806f 100644 --- a/core/admin/mailu/sso/templates/base_sso.html +++ b/core/admin/mailu/sso/templates/base_sso.html @@ -1,15 +1,15 @@ {%- import "macros.html" as macros %} {%- import "bootstrap/utils.html" as utils %} - + Mailu-Admin | {{ config["SITENAME"] }} - - + +
@@ -46,7 +46,7 @@
- - + + diff --git a/core/admin/mailu/static_files/__init__.py b/core/admin/mailu/static_files/__init__.py new file mode 100644 index 00000000..f038c076 --- /dev/null +++ b/core/admin/mailu/static_files/__init__.py @@ -0,0 +1,5 @@ +from flask import Blueprint + +static = Blueprint('static', __name__, static_folder='static', static_url_path='/static') + + diff --git a/core/admin/mailu/ui/templates/base.html b/core/admin/mailu/ui/templates/base.html index fc27d12b..3357d3e3 100644 --- a/core/admin/mailu/ui/templates/base.html +++ b/core/admin/mailu/ui/templates/base.html @@ -1,15 +1,15 @@ {%- import "macros.html" as macros %} {%- import "bootstrap/utils.html" as utils %} - + Mailu-Admin | {{ config["SITENAME"] }} - - + +
@@ -46,7 +46,7 @@
- - + + diff --git a/core/nginx/conf/nginx.conf b/core/nginx/conf/nginx.conf index cc011f90..607e5abd 100644 --- a/core/nginx/conf/nginx.conf +++ b/core/nginx/conf/nginx.conf @@ -136,19 +136,12 @@ http { location ^~ /ui/language { include /etc/nginx/proxy.conf; - proxy_set_header X-Forwarded-Prefix {{ WEB_ADMIN }}; proxy_pass http://$admin; - expires $expires; - } - - location ^~ /sso/static { - include /etc/nginx/proxy.conf; - rewrite /sso/static/(.*) /static/$1 permanent; } location ^~ /static { include /etc/nginx/proxy.conf; - rewrite ^/static/(.*) /ui/static/$1 break; + rewrite ^/static/(.*) /static/static/$1 break; proxy_pass http://$admin; } {% endif %} @@ -230,11 +223,6 @@ http { expires $expires; } - location ^~ {{ WEB_ADMIN }}/ui/static { - include /etc/nginx/proxy.conf; - rewrite {{ WEB_ADMIN }}/ui/static/(.*) /static/$1 permanent; - } - location {{ WEB_ADMIN }}/antispam { rewrite ^{{ WEB_ADMIN }}/antispam/(.*) /$1 break; auth_request /internal/auth/admin;