user web; worker_processes 4; # Speed up regular expressions. pcre_jit on; error_log stderr debug; events { # Connections per worker process. worker_connections 1024; } http { include /etc/nginx/mime.types; default_type application/octet-stream; types { text/plain asc; } server_tokens off; client_max_body_size 1m; sendfile on; tcp_nopush on; include headers.include; server { listen 8080; root /srv/http/public; location / { index index.html index.htm; if (-d $request_filename) { rewrite [^/]$ $http_x_forwarded_proto://$http_host$uri/ redirect; } } location /healthz { access_log off; add_header 'Content-Type' 'application/json'; return 200 '{"status":"OK"}'; } location /.well-known/ { alias /srv/http/public/well-known/; # default_type text/plain; default_type "application/octet-stream"; add_header Access-Control-Allow-Origin * always; } location /.well-known/matrix/server { default_type application/json; add_header "Access-Control-Allow-Origin" *; return 200 '{"m.server": "matrix.fizz.buzz:8448"}'; } location /.well-known/matrix/client { default_type application/json; add_header "Access-Control-Allow-Origin" *; return 200 '{"m.homeserver":{"base_url": "https://matrix.fizz.buzz"}}'; } } }