Open nickygerritsen opened 3 months ago
Maybe php-fpm reads the .env files itself? That's the only way I could see it working.
That was my guess, but I can't seem to find anything telling me it does
Noo it's an bug of process compose. IT"S SOOO ANNOYING
Just do
process.implementation = "honcho";
I just had a somehow related problem for another project where $_ENV
was always an empty array.
I needed to set variables_order = "EGPCS"
in my php.ini (via php.buildEnv extraConfig) to make my project load the environment correctly.
More info: https://stackoverflow.com/a/27077452/4303873
Describe the bug Any PHP scripts running through PHP FPM seem to put all variables that are in my
.env
file into the$_SERVER
supergloball, even if I disable dotEnv integration.To reproduce https://gist.github.com/nickygerritsen/a2c52ba9e8e2f8bf96485bb05169f654
Note that setting
"clear_env" = "no"
makes all environment variables go away, but of course also those in my.nix
file.Now when I open the index.php and dump
$_SERVER
i seeAPP_ENV=prod
as defined in my.env
. Which is not what I want, since I also would like my.env.local
to override this (default Symfony / Shopware behavior).Enabling the dotenv integration and specifying both files makes it use the right environment variables, but then I need to restart my services each time I change one, while Symfony normally dynamically loads the files.
Note that
devenv shell
does NOT have the.env
variables, and I can't seem to find where FPM get's them from. If there is anything I can do to help find the issue or explain it better, let me know.Version