2017-07-21 10 views
0

typo3-instanceで、XMLインターフェイス経由で外部データバックエンドとの間でデータをやりとりする/拡張するいくつかの拡張機能を開発しました。 もちろん、特定のページでキャッシュを無効にする必要があります。このページには、そのインターフェイスの結果が表示されます。 残念ながら、私のtypo3-logは、次のような警告でスパムになります。TYPO3ログで "cache-disabled"を無効にする

cms:$ TSFE-> set_no_cache()がトリガーされました。理由:ページが生成される前にno_cacheが設定されています(安全性チェック)。キャッシングは無効です! cms:$ TSFE-> set_no_cache()がトリガーされました。理由:config.no_cacheが設定されています。キャッシングは無効です!

ログを完全に無効にすることなく、typo3-loggerでキャッシュ警告を無効にするにはどうすればよいですか?あなたが取得したデータを表示する場所を事前に おかげ&宜しく オリバー

答えて

2

あなたは言っていない、またキャッシュを明示的に無効にする必要がありますなぜあなたが言うのです。だから、この答えは、あなたのユースケースを考えれば、あなたが通常どんなことをしているのかということだけになります。

通常、カスタムデータをレンダリングするTypoScriptオブジェクトは、USER_INTと宣言します。これは、TYPO3では、ページコンテンツがレンダリングされたときに、このTSオブジェクトからの出力がレンダリングされないことを意味します。代わりに、プレースホルダ文字列が追加され、URLに他のキャッシュ命令またはキャッシュキーが指定されているかどうかにかかわらず、オブジェクトは各要求時にレンダリングされます。

これは、TYPO3ユニバースでキャッシュされないものと、キャッシュされないものを分ける方法です。このようにして、ページキャッシュ全体を無効にするよりも大幅にパフォーマンスが向上します。

カスタムソースからのデータをページとコンテンツの両方のレンダリングで使用するため、ページのレンダリング全体がキャッシュされないというユースケースが何らかの理由で発生した場合は、これを再考し、そのような値を非常に正確な場所に挿入して、制御できるのはUSER_INTです。

しかし、実際にアプリケーションをうまく実行したい場合は、通常はTYPO3をキャッシュしてから、XMLソースが更新されたときにTYPO3キャッシュをフラッシュするために必要な処理を行います。特定のXMLファイルを使用するTYPO3ページキャッシュを無効にすることができます。ヒント:キャッシュエントリにタグを追加できるフックが存在するため、理論上はXMLファイル名ハッシュをフラッシュタグとして追加できます。

+0

非常に詳細な回答をいただきありがとうございます。 あなたは非常に正しいです:私の問題は、パーツ(user_int - results)だけがウェブサービスからのデータを表示するにもかかわらず、ページキャッシュ全体を無効にするという問題です。私はこれを完全にオーバーホールする必要があります:S – Oliver

関連する問題