3
0
mirror of https://github.com/spantaleev/matrix-docker-ansible-deploy.git synced 2025-10-25 09:33:25 +00:00

Update reverse-proxy examples

This commit is contained in:
Slavi Pantaleev
2024-01-14 17:23:28 +02:00
parent aff57d67c0
commit 0e831db3e5
16 changed files with 89 additions and 617 deletions

View File

@@ -1,17 +1,14 @@
# Apache reverse-proxy
This directory contains sample files that show you how to do reverse-proxying using Apache.
This directory contains sample files that show you how to front the integrated [Traefik](https://traefik.io/) reverse-proxy webserver with your Apache reverse-proxy.
This is for when you wish to have your own Apache webserver sitting in front of Matrix services installed by this playbook.
See the [Using your own webserver, instead of this playbook's nginx proxy](../../docs/configuring-playbook-own-webserver.md) documentation page.
## Prerequisite configuration
To use your own Apache reverse-proxy, you first need to disable the integrated nginx server.
You do that with the following custom configuration (`inventory/host_vars/matrix.<your-domain>/vars.yml`):
To get started, first follow the [front the integrated reverse-proxy webserver with another reverse-proxy](../../docs/configuring-playbook-own-webserver.md#fronting-the-integrated-reverse-proxy-webserver-with-another-reverse-proxy) instructions and update your playbook's configuration (`inventory/host_vars/matrix.<your-domain>/vars.yml`).
```yaml
matrix_nginx_proxy_enabled: false
```
## Using the Apache configuration
You can then use the configuration files from this directory as an example for how to configure your Apache server.
`matrix-domain.conf` contains configuration for the Matrix domain, which handles both the Client-Server API (port `443`) and the Matrix Federation API (port `8448`).
**NOTE**: this is just an example and may not be entirely accurate. It may also not cover other use cases (enabling various services or bridges requires additional reverse-proxying configuration).
`matrix-client-element.conf` is an example for when you're hosting Element at `element.DOMAIN`.
This configuration can also be used as an example for handling other domains, depending on the services you enable with the playbook (e.g. `dimension.DOMAIN`, etc).