Fixes #696 (Github Issue)pull/698/head
| @@ -1,3 +1,17 @@ | |||||
| # 2020-10-28 | |||||
| ## (Compatibility Break) https://matrix.DOMAIN/ now redirects to https://element.DOMAIN/ | |||||
| Until now, we used to serve a static page coming from Synapse at `https://matrix.DOMAIN/`. This page was not very useful to anyone. | |||||
| Since `matrix.DOMAIN` may be accessed by regular users in certain conditions, it's probably better to redirect them to a better place (e.g. to the [Element](docs/configuring-playbook-client-element.md) client). | |||||
| If Element is installed (`matrix_client_element_enabled: true`, which it is by default), we now redirect people to it, instead of showing them a Synapse static page. | |||||
| If you'd like to control where the redirect goes, use the `matrix_nginx_proxy_proxy_matrix_client_redirect_root_uri_to_domain` variable. | |||||
| To restore the old behavior of not redirecting anywhere and serving the Synapse static page, set it to an empty value (`matrix_nginx_proxy_proxy_matrix_client_redirect_root_uri_to_domain: ""`). | |||||
| # 2020-10-26 | # 2020-10-26 | ||||
| ## (Compatibility Break) /_synapse/admin is no longer publicly exposed by default | ## (Compatibility Break) /_synapse/admin is no longer publicly exposed by default | ||||
| @@ -771,6 +771,8 @@ matrix_nginx_proxy_proxy_matrix_client_api_client_max_body_size_mb: "{{ matrix_s | |||||
| matrix_nginx_proxy_proxy_matrix_client_api_forwarded_location_synapse_admin_api_enabled: "{{ matrix_synapse_admin_enabled }}" | matrix_nginx_proxy_proxy_matrix_client_api_forwarded_location_synapse_admin_api_enabled: "{{ matrix_synapse_admin_enabled }}" | ||||
| matrix_nginx_proxy_proxy_matrix_client_redirect_root_uri_to_domain: "{{ matrix_server_fqn_element if matrix_client_element_enabled else '' }}" | |||||
| matrix_nginx_proxy_proxy_matrix_enabled: true | matrix_nginx_proxy_proxy_matrix_enabled: true | ||||
| matrix_nginx_proxy_proxy_element_enabled: "{{ matrix_client_element_enabled }}" | matrix_nginx_proxy_proxy_element_enabled: "{{ matrix_client_element_enabled }}" | ||||
| matrix_nginx_proxy_proxy_dimension_enabled: "{{ matrix_dimension_enabled }}" | matrix_nginx_proxy_proxy_dimension_enabled: "{{ matrix_dimension_enabled }}" | ||||
| @@ -169,6 +169,12 @@ matrix_nginx_proxy_proxy_matrix_client_api_forwarded_location_prefix_regexes: | | |||||
| (['/_synapse/admin'] if matrix_nginx_proxy_proxy_matrix_client_api_forwarded_location_synapse_admin_api_enabled else []) | (['/_synapse/admin'] if matrix_nginx_proxy_proxy_matrix_client_api_forwarded_location_synapse_admin_api_enabled else []) | ||||
| }} | }} | ||||
| # Specifies where requests for the root URI (`/`) on the `matrix.` domain should be redirected. | |||||
| # If this has an empty value, they're just passed to the homeserver, which serves a static page. | |||||
| # If you'd like to make `https://matrix.DOMAIN` redirect to `https://element.DOMAIN` (or something of that sort), specify the domain name here. | |||||
| # Example value: `element.DOMAIN` (or `{{ matrix_server_fqn_element }}`). | |||||
| matrix_nginx_proxy_proxy_matrix_client_redirect_root_uri_to_domain: "" | |||||
| # Controls whether proxying for the Matrix Federation API should be done. | # Controls whether proxying for the Matrix Federation API should be done. | ||||
| matrix_nginx_proxy_proxy_matrix_federation_api_enabled: false | matrix_nginx_proxy_proxy_matrix_federation_api_enabled: false | ||||
| matrix_nginx_proxy_proxy_matrix_federation_api_addr_with_container: "matrix-synapse:8048" | matrix_nginx_proxy_proxy_matrix_federation_api_addr_with_container: "matrix-synapse:8048" | ||||
| @@ -151,7 +151,11 @@ | |||||
| } | } | ||||
| location / { | location / { | ||||
| rewrite ^/$ /_matrix/static/ last; | |||||
| {% if matrix_nginx_proxy_proxy_matrix_client_redirect_root_uri_to_domain %} | |||||
| return 302 $scheme://{{ matrix_nginx_proxy_proxy_matrix_client_redirect_root_uri_to_domain }}$request_uri; | |||||
| {% else %} | |||||
| rewrite ^/$ /_matrix/static/ last; | |||||
| {% endif %} | |||||
| } | } | ||||
| {% endmacro %} | {% endmacro %} | ||||