Give the site a real root
A static origin needs only generated files and a web server. Keep releases in separate directories and expose one current release through a controlled reference. Upload and check the new release before switching that reference. This keeps the previous version available for a quick rollback without needing a database migration or a build tool on the public server.
Make automation reachable
Certificate automation still depends on a working validation method and correct DNS. A service that listens only on a local TLS port may need a separately reachable HTTP challenge path. Verify how the deployment handles that path rather than assuming a healthy certificate today guarantees renewal months later. Keep certificate storage persistent across releases.
Check the response you serve
Validate the web-server configuration before reloading it. Test the home page, a nested article, an asset and a missing path. A custom error page should retain a 404 status rather than disguising every missing URL as a successful home page. Cache versioned assets for a long time, while allowing HTML to pick up new release references promptly.
At the terminal
caddy validate --config /etc/caddy/Caddyfile --adapter caddyfile
systemctl reload caddy
curl -I https://example.com/
curl -I https://example.com/does-not-exist