commit 16e99a8464c1658bfa457b546234f4aa246ecb95
parent 6844bf021208e88085b877cc9603196df55c0242
Author: ms <ms@taler.net>
Date: Wed, 24 Nov 2021 13:00:29 +0100
Redirect with relative URL.
That allows proxy middleware to adjust/complete the Location header.
Diffstat:
4 files changed, 11 insertions(+), 3 deletions(-)
diff --git a/talermerchantdemos/blog/blog.py b/talermerchantdemos/blog/blog.py
@@ -29,6 +29,7 @@ from flask_babel import Babel
from flask_babel import refresh
from flask_babel import force_locale
from flask_babel import gettext
+from werkzeug.middleware.proxy_fix import ProxyFix
import time
import sys
from urllib.parse import urljoin, urlencode, urlparse
@@ -78,6 +79,7 @@ if not sys.version_info.major == 3 and sys.version_info.minor >= 6:
sys.exit(1)
app = flask.Flask(__name__, template_folder="../templates", static_folder="../static")
+app.wsgi_app = ProxyFix(app.wsgi_app, x_host=1, x_prefix=1)
app.debug = True
app.secret_key = base64.b64encode(os.urandom(64)).decode("utf-8")
@@ -136,7 +138,7 @@ def internal_error(e):
def index():
default = "en"
target = flask.request.accept_languages.best_match(translations, default)
- return flask.redirect("/" + target + "/", code=302)
+ return flask.redirect(target + "/", code=302)
##
diff --git a/talermerchantdemos/donations/donations.py b/talermerchantdemos/donations/donations.py
@@ -25,6 +25,7 @@ from flask_babel import Babel
from flask_babel import refresh
from flask_babel import force_locale
from flask_babel import gettext
+from werkzeug.middleware.proxy_fix import ProxyFix
import os
import time
import traceback
@@ -48,6 +49,7 @@ LOGGER = logging.getLogger(__name__)
BASE_DIR = os.path.dirname(os.path.abspath(__file__))
app = flask.Flask(__name__, template_folder="../templates", static_folder="../static")
+app.wsgi_app = ProxyFix(app.wsgi_app, x_host=1, x_prefix=1)
app.debug = True
app.secret_key = base64.b64encode(os.urandom(64)).decode("utf-8")
@@ -158,7 +160,7 @@ def favicon():
def index():
default = "en"
target = flask.request.accept_languages.best_match(translations, default)
- return flask.redirect("/" + target + "/", code=302)
+ return flask.redirect(target + "/", code=302)
##
diff --git a/talermerchantdemos/landing/landing.py b/talermerchantdemos/landing/landing.py
@@ -27,6 +27,7 @@ from flask_babel import Babel
from flask_babel import refresh
from flask_babel import force_locale
from flask_babel import gettext
+from werkzeug.middleware.proxy_fix import ProxyFix
import traceback
from taler.util.talerconfig import TalerConfig, ConfigurationError
from ..httpcommon import (
@@ -48,6 +49,7 @@ if not sys.version_info.major == 3 and sys.version_info.minor >= 6:
sys.exit(1)
app = flask.Flask(__name__, template_folder="../templates", static_folder="../static")
+app.wsgi_app = ProxyFix(app.wsgi_app, x_host=1, x_prefix=1)
app.debug = True
app.secret_key = base64.b64encode(os.urandom(64)).decode("utf-8")
@@ -117,7 +119,7 @@ def favicon():
def index():
default = "en"
target = flask.request.accept_languages.best_match(translations, default)
- return flask.redirect("/" + target + "/", code=302)
+ return flask.redirect(target + "/", code=302)
##
diff --git a/talermerchantdemos/survey/survey.py b/talermerchantdemos/survey/survey.py
@@ -28,6 +28,7 @@ from flask_babel import Babel
from flask_babel import refresh
from flask_babel import force_locale
from flask_babel import gettext
+from werkzeug.middleware.proxy_fix import ProxyFix
import traceback
from taler.util.talerconfig import TalerConfig, ConfigurationError
from ..httpcommon import (
@@ -50,6 +51,7 @@ if not sys.version_info.major == 3 and sys.version_info.minor >= 6:
sys.exit(1)
app = flask.Flask(__name__, template_folder="../templates", static_folder="../static")
+app.wsgi_app = ProxyFix(app.wsgi_app, x_host=1, x_prefix=1)
app.debug = True
app.secret_key = base64.b64encode(os.urandom(64)).decode("utf-8")