From 83046c80c47dce0598c4eed08792e8c6fc7bd834 Mon Sep 17 00:00:00 2001 From: Unrud Date: Sun, 4 Sep 2016 21:10:58 +0200 Subject: [PATCH] Let reverse proxies overwrite script name Reverse proxies can overwrite the script name with the HTTP header field X-Script-Name. --- radicale/__init__.py | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/radicale/__init__.py b/radicale/__init__.py index 25e0c8e..d589ef7 100644 --- a/radicale/__init__.py +++ b/radicale/__init__.py @@ -307,6 +307,11 @@ class Application: headers = pprint.pformat(self.headers_log(environ)) self.logger.debug("Request headers:\n%s", headers) + # Let reverse proxies overwrite SCRIPT_NAME + if "HTTP_X_SCRIPT_NAME" in environ: + environ["SCRIPT_NAME"] = environ["HTTP_X_SCRIPT_NAME"] + self.logger.debug("Script name overwritten by client: %s", + environ["SCRIPT_NAME"]) # Sanitize base prefix environ["SCRIPT_NAME"] = storage.sanitize_path( environ.get("SCRIPT_NAME", "")).rstrip("/")