From cfeb37f039bff557d47247b21a3080a930e60d90 Mon Sep 17 00:00:00 2001 From: Ryan Cole Date: Wed, 19 Aug 2020 23:26:50 +1200 Subject: [PATCH] Updated docs: Added note about missing 308 redirect support. (#8120) * Updated docs: Added note about missing 308 redirect support. * Added changelog --- changelog.d/8120.doc | 1 + docs/federate.md | 12 ++++++++++++ 2 files changed, 13 insertions(+) create mode 100644 changelog.d/8120.doc diff --git a/changelog.d/8120.doc b/changelog.d/8120.doc new file mode 100644 index 0000000000..877ef79fd2 --- /dev/null +++ b/changelog.d/8120.doc @@ -0,0 +1 @@ +Updated documentation to note that Synapse does not follow `HTTP 308` redirects due to an upstream library not supporting them. Contributed by Ryan Cole. \ No newline at end of file diff --git a/docs/federate.md b/docs/federate.md index a0786b9cf7..b15cd724d1 100644 --- a/docs/federate.md +++ b/docs/federate.md @@ -47,6 +47,18 @@ you invite them to. This can be caused by an incorrectly-configured reverse proxy: see [reverse_proxy.md]() for instructions on how to correctly configure a reverse proxy. +### Known issues + +**HTTP `308 Permanent Redirect` redirects are not followed**: Due to missing features +in the HTTP library used by Synapse, 308 redirects are currently not followed by +federating servers, which can cause `M_UNKNOWN` or `401 Unauthorized` errors. This +may affect users who are redirecting apex-to-www (e.g. `example.com` -> `www.example.com`), +and especially users of the Kubernetes *Nginx Ingress* module, which uses 308 redirect +codes by default. For those Kubernetes users, [this Stackoverflow post](https://stackoverflow.com/a/52617528/5096871) +might be helpful. For other users, switching to a `301 Moved Permanently` code may be +an option. 308 redirect codes will be supported properly in a future +release of Synapse. + ## Running a demo federation of Synapses If you want to get up and running quickly with a trio of homeservers in a