我在nginx / php-fpm上运行Symfony 2.8.6应用程序。
有多个域已解析到此服务器中,基本上我想要做的是根据用于访问的域来更改RDB配置。
所以我的nginx.conf有像fastcgi_param SYMFONY__SOME__PARAM $host
这样的行,但我有问题
此参数注入已缓存,无法按预期工作。
例如,有两个域a.example.com
和b.example.com
,它们指向我的服务器。
我希望它通过不同的域访问时连接到不同的MySQL服务器,但它会忽略域并始终连接到同一服务器。
我已确认:
var_dump($_SERVER['SYMFONY__SOME__PARAM'])
的输出会按预期更改。app/cache/prod/appProdProjectContainer.php
AFAIS有两种选择:完全禁用配置缓存,或禁用缓存环境变量 我认为后一个选项更受欢迎,但我甚至不知道如何禁用缓存,无论是全部还是部分。
答案 0 :(得分:1)
在Symfony中无法在服务定义中使用动态环境变量(请参阅symfony/symfony#16403 (comment)原因)。您可以尝试使用Incenteev/DynamicParametersBundle,但我没有经验。
答案 1 :(得分:0)
如何更改每个environemnt的缓存目录。
fastcgi_param SYMFONY__CACHE_DIR /path/to/cache