Add Caddy reverse proxy configuration for Matrix (#183)

This commit is contained in:
2026-04-05 00:08:31 +00:00
parent e1f8557bec
commit 7d39968ce4

View File

@@ -0,0 +1,58 @@
# Caddyfile — Reverse proxy for Conduit Matrix homeserver
# Issue: #166 / #183
#
# Place in /etc/caddy/Caddyfile or use with `caddy run --config Caddyfile`
# Matrix client and federation on same domain
matrix.timmy.foundation {
# Client API (.well-known, /_matrix/client)
handle /.well-known/matrix/* {
header Content-Type application/json
respond `{"
"m.homeserver": {"base_url": "https://matrix.timmy.foundation"},
"m.identity_server": {"base_url": "https://vector.im"}
}` 200
}
# Handle federation (server-to-server) on standard path
handle /_matrix/server/* {
reverse_proxy localhost:6167
}
# Handle client API
handle /_matrix/client/* {
reverse_proxy localhost:6167
}
# Handle media repository
handle /_matrix/media/* {
reverse_proxy localhost:6167
}
# Handle federation checks
handle /_matrix/federation/* {
reverse_proxy localhost:6167
}
# Handle static content (if serving Element web from same domain)
handle_path /element/* {
reverse_proxy localhost:8080
}
# Health check / status
respond /health "OK" 200
# Default — you may want to serve Element web or redirect
respond "Matrix Homeserver" 200
}
# Optional: Serve Element Web on separate subdomain
# element.timmy.foundation {
# reverse_proxy localhost:8080
# }
# Federation port (8448) — server-to-server communication
# This allows other Matrix servers to find and connect to yours
matrix.timmy.foundation:8448 {
reverse_proxy localhost:6167
}