{
	{$CADDY_GLOBAL_OPTIONS}

	frankenphp {
		# En prod, FRANKENPHP_CONFIG vaut "worker ./public/index.php" (voir Dockerfile).
		# En dev il reste vide : chaque requête repart d'un kernel neuf, ce qui rend
		# le debug prévisible. Le worker mode ne se teste que sur l'image prod.
		{$FRANKENPHP_CONFIG}
	}
}

{$CADDY_EXTRA_CONFIG}

{$SERVER_NAME:localhost} {
	log {
		{$CADDY_SERVER_LOG_OPTIONS}
		# Les clés API circulent en Authorization: Bearer. Elles ne doivent jamais
		# atterrir dans les logs d'accès — c'est le premier endroit où fuit un secret.
		format filter {
			wrap console
			fields {
				request>headers>Authorization delete
				request>headers>Cookie delete
				request>headers>X-Api-Key delete
			}
		}
	}

	root /app/public
	encode zstd br gzip

	php_server {
		try_files {path} index.php
	}
}
