infra/roles/nginx/templates/well-known.conf.j2

42 lines
1.7 KiB
Django/Jinja

location = /.well-known/matrix/server {
default_type application/json;
# same as matrix.org returns
# add_header "x-content-type-options" "nosniff" always;
# add_header "x-frame-options" "SAMEORIGIN" always;
# add_header "x-xss-protection" "1; mode=block" always;
return 200 '{"m.server": "{{ matrix_url }}:443"}';
}
location = /.well-known/matrix/client {
default_type application/json;
# same as matrix.org returns
# add_header "x-content-type-options" "nosniff" always;
# add_header "x-frame-options" "SAMEORIGIN" always;
# add_header "x-xss-protection" "1; mode=block" always;
add_header "Access-Control-Allow-Origin" "*" always;
return 200 '{"m.homeserver":{"base_url":"https://{{ matrix_url }}"}}';
}
location = /.well-known/matrix/support {
default_type application/json;
return 200 '{"contacts":[{"matrix_id":"@{{myusername}}:{{matrix_domain}}","role":"m.role.admin"},{"email_address":"matrix@{{domain}}","role":"m.role.admin"}],"support_page":"https://www.{{domain}}/docs/support/"}';
}
{% if 'matrix' not in group_names and 'matrixbrides' not in group_names %}
location = /_matrix/client/versions {
return 301 https://{{ matrix_url }}/_matrix/client/versions;
}
{% endif %}
location = /.well-known/carddav {
return 301 https://{{ nextcloud_url }}/remote.php/dav;
}
location = /.well-known/caldav {
return 301 https://{{ nextcloud_url }}/remote.php/dav;
}
location = /.well-known/openid-configuration {
return 301 https://{{ authelia_login_url }}/.well-known/openid-configuration;
}
location = /.well-known/oauth-authorization-server {
return 301 https://{{ authelia_login_url }}/.well-known/oauth-authorization-server;
}