Troubleshooting
People cannot sign in to the community
The server checks each sign-in token's issuer and audience.
SBLURP_BASE_URLmust be exactly the address people add in the app, withhttps://and no trailing path.SBLURP_TRUSTED_ISSUERSmust includehttps://sblurp.chat.- The server must reach
https://sblurp.chat/.well-known/jwks.jsonto fetch the signing keys.
Messages appear only after a reload
The proxy is buffering the live stream. Turn off buffering and compression for the server. With Caddy, use h2c:// and flush_interval -1, and no encode. See TLS and reverse proxies.
The certificate does not work
- The DNS record must point to the machine. Check with
dig +short chat.example.com. - On Cloudflare, set the record to "DNS only" (grey cloud).
- Ports 80 and 443 must be open.
- Read Caddy's log:
docker compose logs caddy, orjournalctl -u caddy.
Images and files show a 403
File links are signed and last one to two hours. The app gets fresh ones when it lists messages again. A 403 on an old link is normal. If every file fails, the file-key may have changed. Restore it together with files/.
Someone else became the owner
The first person to join becomes the owner. If that was not you, start again with an empty data folder, then join before you share the address.
"You are sending messages too fast"
People may send 5 messages per second, with a burst of 10. Bots follow -bot-rate and -bot-burst.
The app shows "reconnecting" all the time
- Check that the server is up:
curl https://chat.example.com/healthzshould answerok. - The proxy's idle timeout must be longer than 25 seconds, the heartbeat interval.
- On Fly, keep exactly one machine, always on.
Logs
| Setup | Command |
|---|---|
| Compose | docker compose logs -f server |
| Podman | journalctl -u sblurp-server -f |
| Fly.io | fly logs -a my-community |
Plugins write console.log output to the same log.
View this page as Markdown · Glossary · API schema.json · openapi.json