Symfony in Docker: % Env (CSV: ...) % macht Framework.Php

PHP-Programmierer chatten hier
Anonymous
 Symfony in Docker: % Env (CSV: ...) % macht Framework.

Post by Anonymous »

Wenn Symfony in einem Container verwendet wird, scheint %Env (CSV: ...) % bei der Bevölkerung einer Konfigurationsoption zu brechen, die ein Array erwartet. Zum Beispiel in config/pakete/Framework.yaml :

Code: Select all

# see https://symfony.com/doc/current/reference/configuration/framework.html
framework:
trusted_proxies: '%env(string:APP_TRUSTED_PROXIES)%'
trusted_headers: '%env(csv:APP_TRUSTED_HEADERS)%'
< /code>
Da .Env-Dateien in meinem Container-Setup nicht gelesen werden, setze ich App_Trusted_Headers über Docker als mit Kommas getrennte String ein.docker compose exec php php bin/console debug:container --env-vars | grep APP_
< /code>
Ich erhalte: < /p>
In BaseNode.php line 496:

Invalid type for path "framework.trusted_headers.0". Expected one of "bool"
, "int", "float", "string", but got "array".
< /code>
trusted_headers
erwartet ein Array , aber Symfony beschwert sich, es empfängt ein Array . class = "Lang-Bash PrettyPrint-Override">

Code: Select all

git clone https://github.com/dunglas/symfony-docker
cd symfony-docker
docker compose build --pull --no-cache
docker compose up --wait
< /code>
Then edit the config/packages/framework.yaml and add:
framework:
trusted_headers: '%env(csv:APP_TRUSTED_HEADERS)%'
< /code>
In compose.yaml, define the env var. I tried the following (each variant tested separately):
service:
php:
environment:
APP_TRUSTED_HEADERS: forwarded,x-forward-port # does NOT WORK
APP_TRUSTED_HEADERS: forwarded # does NOT WORK
APP_TRUSTED_HEADERS: "forwarded" # does NOT WORK
APP_TRUSTED_HEADERS: "'forwarded'" # does NOT WORK
APP_TRUSTED_HEADERS: "${APP_TRUSTED_HEADERS}" # with the host env set

< /code>
All variants result in the same error.
I read "Environment variable processors", this post about "Environment variables in a dockerized Symfony" and How to Configure Symfony to Work behind a Load Balancer or a Reverse Proxy
What am I doing wrong, and how should APP_TRUSTED_HEADERS be passed so that %env(csv:...)%
beschlasst auf ein flaches Array von Zeichenfolgen? Und ich glaube, dies ist kein Duplikat: Ich versuche nicht, ein Array über Komponieren zu bestehen. Das Problem ist, dass Symfony auch mit einer einfachen Zeichenfolge im Container -Envy das Framework behandelt. In dieser Frage handelt>

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post