Files
e-cosplay/docker/caddy/Caddyfile
Serreau Jovann 9cca3b9e0e ⬆️ chore(composer): Met à jour les dépendances et les configurations du projet.
 feat(Members): Ajoute les entités MembersPage et MembersCosplan et leurs relations.
🔧 fix(caddy): Corrige la redirection des assets Trustpilot dans Caddyfile.
⚙️ chore(vich_uploader): Ajoute les configurations VichUploader pour MembersPage.
2025-11-26 08:50:24 +01:00

47 lines
2.1 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
}
handle_path /ts.js {
redir https://widget.trustpilot.com/bootstrap/v5/tp.widget.bootstrap.min.js
}
handle_path /tp.widget.bootstrap.min.js.map {
redir https://widget.trustpilot.com/bootstrap/v5/tp.widget.bootstrap.min.js.map
}
# 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.
}