diff --git a/DOCUMENTATION.md b/DOCUMENTATION.md
index 3ba159a3..ebabc55b 100644
--- a/DOCUMENTATION.md
+++ b/DOCUMENTATION.md
@@ -372,6 +372,11 @@ RewriteRule ^/radicale$ /radicale/ [R,L]
ProxyPass http://localhost:5232/ retry=0
ProxyPassReverse http://localhost:5232/
RequestHeader set X-Script-Name /radicale
+ RequestHeader set X-Forwarded-Port "%{SERVER_PORT}s"
+ RequestHeader unset X-Forwarded-Proto
+
+ RequestHeader set X-Forwarded-Proto "https"
+
```
@@ -384,6 +389,11 @@ RewriteRule ^(.*)$ http://localhost:5232/$1 [P,L]
# Set to directory of .htaccess file:
RequestHeader set X-Script-Name /radicale
+RequestHeader set X-Forwarded-Port "%{SERVER_PORT}s"
+RequestHeader unset X-Forwarded-Proto
+
+RequestHeader set X-Forwarded-Proto "https"
+
```
Example **lighttpd** configuration:
diff --git a/radicale/app/move.py b/radicale/app/move.py
index 0c38eed5..5bd8a579 100644
--- a/radicale/app/move.py
+++ b/radicale/app/move.py
@@ -32,6 +32,7 @@ def get_server_netloc(environ: types.WSGIEnviron, force_port: bool = False):
host = environ["HTTP_X_FORWARDED_HOST"]
proto = environ.get("HTTP_X_FORWARDED_PROTO") or "http"
port = "443" if proto == "https" else "80"
+ port = environ["HTTP_X_FORWARDED_PORT"] or port
else:
host = environ.get("HTTP_HOST") or environ["SERVER_NAME"]
proto = environ["wsgi.url_scheme"]