From 8ca120df7c2964c73390dbfab9ceba03f76eadfe Mon Sep 17 00:00:00 2001
From: Daniele Sluijters <daenney@users.noreply.github.com>
Date: Mon, 23 Nov 2020 14:01:18 +0100
Subject: [PATCH] INSTALL: Fix setting content-type on well-known (#8793)

When using `add_header` nginx will literally add a header. If a
`content-type` header is already configured (for example through a
server wide default), this means we end up with 2 content-type headers,
like so:

```
content-type: text/html
content-type: application/json
access-control-allow-origin: *
```

That doesn't make sense. Instead, we want the content type of that
block to only be `application/json` which we can achieve using
`default_type` instead.

Signed-off-by: Daniele Sluijters <daenney@users.noreply.github.com>
---
 INSTALL.md           | 2 +-
 changelog.d/8793.doc | 1 +
 2 files changed, 2 insertions(+), 1 deletion(-)
 create mode 100644 changelog.d/8793.doc

diff --git a/INSTALL.md b/INSTALL.md
index c6fcb3bd7f..eaeb690092 100644
--- a/INSTALL.md
+++ b/INSTALL.md
@@ -487,7 +487,7 @@ In nginx this would be something like:
 ```
 location /.well-known/matrix/client {
     return 200 '{"m.homeserver": {"base_url": "https://<matrix.example.com>"}}';
-    add_header Content-Type application/json;
+    default_type application/json;
     add_header Access-Control-Allow-Origin *;
 }
 ```
diff --git a/changelog.d/8793.doc b/changelog.d/8793.doc
new file mode 100644
index 0000000000..f6eee1ea73
--- /dev/null
+++ b/changelog.d/8793.doc
@@ -0,0 +1 @@
+Fix the example on how to set the `Content-Type` header in nginx for the Client Well-Known URI.
-- 
GitLab