ArxMedia is built first for self-hosting.
- Assume private or home-lab deployment by default.
- If you expose it to the public internet, harden your setup first.
- Set a strong
SECRET_KEY. WithDEBUG=Falsethe app refuses to start if it is shorter than 50 characters or still a placeholder. - Set
DEBUG=Falseoutside local development (compose.prod.yamldefaults to it).DATABASE_URLandFERNET_KEYare then required. - Use strong database credentials.
compose.prod.yamlrequiresSECRET_KEYandPOSTGRES_PASSWORDto be set. - Only set
USE_X_FORWARDED_HOST=Truewhen a trusted reverse proxy setsX-Forwarded-Host. - Keep
.envprivate and never commit it. - Put the app behind a reverse proxy with HTTPS.
- Please do not post exploit details in a public issue.
- Open an issue with minimal details, then coordinate privately with the maintainer.
- Include repro steps and impact so it can be fixed quickly.
- Commit placeholders in
.env.example, never real secrets. - Rotate any key or token that is accidentally exposed.