簡體   English   中英

Symfony2緩存和參數

[英]Symfony2 cache and parameters

我設置了一個奇怪的應用程序,多個子域都指向同一Symfony2安裝。

子域只需更改應用程序內的單個參數,即可加載不同的內容。

但是,此參數已被緩存,因此訪問a.site.com然后訪問b.site.com會使A的內容出現,而不是B的內容出現。

我可以使用另一種方法嗎?

有沒有一種方法可以添加此參數,緩存的哈希值或類似內容,以便在應用程序中更改參數時內容也可以更改。

我正在使用此方法將常量從子域傳遞到Symfony2應用程序中

如何在Symfony 2中將PHP常量作為服務參數傳遞?

您可以使用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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM