2013-07-03 84 views
1

我是一名網站管理員,我的網站建立在symfony2前端。 我的網站有很多users.When我清除緩存,一些用戶正在訪問我的網站,所以我不能把乾淨的緩存,造成了很多問題。 我應該怎麼做才能清理緩存我應該如何清理symfony2緩存

+0

?通常是一個緩存:prod清除不應該影響活動用戶。 –

回答

2

要清除symfony中,你需要執行下面的命令緩存:

php app/console cache:clear --env=prod 

--env=prod告訴console在生產環境中執行。這將刪除以前的緩存。

注:

默認的Symfony將存儲在其高速緩存目錄中的會話信息。清除緩存意味着每個用戶都必須重新進行身份驗證。

您可以通過更改app/config/config.yml中的以下行來更改Symfony用來存儲會話文件的路徑。

framework: 
    session: 
     save_path: %kernel.root_dir%/sessions 

save_path設置將隨後在app/sessions存儲會話信息。

0

我多次遇到這個問題。如果您的網站正在被這麼多用戶訪問,並且您清除了緩存。我相信你的網站在新的緩存生成之前幾分鐘就關閉了。

因此,清除生產服務器上的緩存不應該是一項常規活動。 有幾個解決方法或技巧來克服這個問題:

  1. 找到您的網站流量低時的時間。可能是在夜晚的某個時間,然後清除緩存。
  2. 當您想要清除緩存時,請設置生產服務器的副本,然後計劃將公有領域IP切換到新副本以進行計時,以便用戶不能面對停機時間,並且一旦清除了實際生產中的緩存服務器。將公共域ip切換回生產服務器。
  3. 如果您對模板ietwig進行了一些更改並希望對生產進行實時更改,那麼嘗試在app/cache/prod/twig目錄中找到模板並grep模板名稱,您將獲得這些文件。除移動文件或刪除文件外,您的更改將保留在生產服務器上。

如何清除命令你使用的緩存

php app/console cache:clear 
chmod -R 777 app/cache 
chmod -R 777 app/logs