我正在使用带有nginx和php-fpm7.2的ubuntu:18.04容器。我设置
clear_env=no
在 /etc/php/7.2/fpm/pool.d/www.conf 和
中variables_order = "EGPCS"
在 /etc/php/7.2/fpm/php.ini
中我从docker-compose传递了一个变量$ myVar。正在运行
echo $myVar
显示正确的值。
跑步 php -r“ echo getenv('myVar');” 显示正确的值。
将文件 index.php 放入包含以下内容的 / var / www / html / (这是我的www根目录)
<?php
echo getenv('myVar');
?>
返回一个空字符串。
有人可以帮我吗?
谢谢你,马丁
答案 0 :(得分:1)
这是一个PHP-FPM恶作剧。
clear_env = no
上设置/etc/php/7.2/fpm/pool.d/www.conf
,因此; 在Dockerfile上,以init.d
开始php-fpm,不使用 service
。
例如:
CMD /etc/init.d/php7.2-fpm start && nginx -g 'daemon off;'
现在检查环境变量?
答案 1 :(得分:0)
可能是命名约定,更具体地说是分隔符引起了问题。尝试命名环境变量MY_VAR而不是MyVar。