2016-06-27 57 views
0

これは環境と関連している可能性がある特有の問題です。基本的に私は、Windowsの下でのSmartyを実行し、この問題を持っていなかったが、Ubuntuのベイグラントボックスに移行するとき、私はこの奇妙な待ち時間の取得:私のインデックスから余分なリフレッシュが必要なSmartyキャッシング

  1. ページを更新、すべての変数は、var_dumpsなど。 PHPは正しくレンダリングされます。
  2. ただし、テンプレートは2番目または3番目のリフレッシュまでリフレッシュされません。
  3. 私は同じ結果を持つ外気と内気の両方のファイルを編集しようとしました。
  4. $smarty->setCaching(Smarty::CACHING_OFF);は、結果に影響するようです。

私はsetCompileCheck(true)を自分のコードに設定しました。ページをリフレッシュすると、templates_cの下のテンプレートがリフレッシュされることがわかりました。ただし、ブラウザに配信されるファイルは少なくとも1回の反復である。

"A"という文字列のテンプレートを作成し、 "B"を追加して、リフレッシュして、 "C"リフレッシュなどを追加することで簡単に確認できました。 "AB"とそれ以降のリフレッシュは "C"を示した。

ロジックは、このようにそれがこれを引き起こしてapache2キャッシングではありません、私のindex.php現れで出力に追加すると、瞬時に(テンプレートを除いて)私の変更を反映しているので、これは、Smartyのテンプレートの問題で決まりでしょう。

リフレッシュごとにすべてのテンプレートデータをクリアすることはオプションではありません。

アイデア?

答えて

0

これは明らかにZendキャッシュによるものです。 Apacheで無効にすることで修正できます

[opcache] 
opcache.enable=0 
opcache.enable_cli=0 
関連する問題