42 lines
1.9 KiB
Caddyfile
42 lines
1.9 KiB
Caddyfile
|
|
# ./docker/caddy/Caddyfile
|
||
|
|
|
||
|
|
# Nous écoutons sur le port 80 (qui est mappé depuis le port 8000 de l'hôte)
|
||
|
|
:80 {
|
||
|
|
# La racine de votre application Symfony
|
||
|
|
root * /srv/app/public
|
||
|
|
|
||
|
|
# Activation de la compression (optionnel)
|
||
|
|
encode gzip zstd
|
||
|
|
|
||
|
|
# Gère les assets statiques directement (améliore les performances)
|
||
|
|
file_server
|
||
|
|
|
||
|
|
# Passe toutes les requêtes non résolues par file_server à Symfony (index.php)
|
||
|
|
php_fastcgi php:9000 { # 'php' est le nom de votre service PHP dans docker-compose
|
||
|
|
# Transmet les en-têtes X-Forwarded-* reçus de Nginx à PHP-FPM
|
||
|
|
# C'est CRUCIAL pour que Symfony détecte HTTPS
|
||
|
|
env HTTPS on # Simule que la connexion est HTTPS pour PHP
|
||
|
|
env HTTP_X_FORWARDED_PROTO {header.X-Forwarded-Proto} # Récupère le proto original de Nginx
|
||
|
|
env HTTP_X_FORWARDED_HOST {header.X-Forwarded-Host} # Récupère l'hôte original de Nginx
|
||
|
|
env HTTP_X_FORWARDED_PORT {header.X-Forwarded-Port} # Récupère le port original de Nginx
|
||
|
|
env HTTP_X_REAL_IP {header.X-Real-IP} # Récupère l'IP réelle du client (si Nginx la passe)
|
||
|
|
|
||
|
|
# Assurez-vous que l'adresse IP de Nginx est aussi trustée par Symfony
|
||
|
|
# via framework.trusted_proxies dans Symfony.
|
||
|
|
}
|
||
|
|
|
||
|
|
# Journalisation des accès (utile pour le débogage)
|
||
|
|
log {
|
||
|
|
output stdout
|
||
|
|
format json
|
||
|
|
}
|
||
|
|
|
||
|
|
# Configuration des en-têtes CORS pour les requêtes OPTIONS du profiler
|
||
|
|
# Note: Caddy a une directive 'header' mais c'est pour les réponses.
|
||
|
|
# Pour gérer spécifiquement les OPTIONS en tant que preflight, c'est plus direct
|
||
|
|
# de le faire via php_fastcgi si Symfony peut le gérer, ou avec une directive
|
||
|
|
# 'handle' ou 'route' spécifique si Caddy doit répondre directement.
|
||
|
|
# Pour l'instant, faisons confiance à Symfony pour gérer les CORS via NelmioCorsBundle
|
||
|
|
# une fois que le protocole est correct.
|
||
|
|
}
|