[英]Symfony2 cache and parameters
我设置了一个奇怪的应用程序,多个子域都指向同一Symfony2安装。
子域只需更改应用程序内的单个参数,即可加载不同的内容。
但是,此参数已被缓存,因此访问a.site.com然后访问b.site.com会使A的内容出现,而不是B的内容出现。
我可以使用另一种方法吗?
有没有一种方法可以添加此参数,缓存的哈希值或类似内容,以便在应用程序中更改参数时内容也可以更改。
我正在使用此方法将常量从子域传递到Symfony2应用程序中
您可以使用Symfony的Request对象获取URL并解析该子域的URL。 使用它来创建您的配置参数,因为它不会被缓存。
像这样:
echo $request->getUri();
Symfony的API可能是很好的资源,但是有点难以阅读。 http://api.symfony.com/2.6/Symfony/Component/HttpFoundation/Request.html
我最终写了一个服务来解析主机名,该服务随后在我的控制器中可用。
class GameSystem {
public function getGameSystemName()
{
$ar = explode(".", $_SERVER['HTTP_HOST']);
$first = reset($ar);
$game_system_short_name = strtolower($first);
return $game_system_short_name;
}
}
最初,我尝试使用每个子域的索引文件中设置的常量值。 但这是失败的,并产生了一些非常奇怪的效果。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.