# vim: ft=caddyfile

{
    grace_period 60s
    import email
}

#{
#    servers :443 {
#        protocol {
#            experimental_http3
#        }
#    }
#}

(basicerrors) {
    handle_errors {
        #respond "{http.error.status_code} {http.error.status_text}"

        templates
        rewrite * /index.html
        root * /etc/caddy/errors
        file_server
    }
}

(matrix-well-known) {
    handle_path /.well-known/matrix/* {
        header Access-Control-Allow-Origin "*"
        header Access-Control-Allow-Methods "GET, POST, PUT, DELETE, OPTIONS"
        header Access-Control-Allow-Headers "Origin, X-Requested-With, Content-Type, Accept, Authorization"

        rewrite * {path}.json
        root * /etc/caddy/matrix_well_known
        file_server
    }
}

import conf.d/*