キャッシュから単一のURLをクリアする


9

Drupalの標準キャッシュシステムを使用して、キャッシュ全体をクリアせずにノードまたはURLのキャッシュをクリアする方法はありますか(サイト全体の速度が低下します)?

回答:


6

モジュールのキャッシュアクションは、キャッシュのクリアを非常に細かく制御します。

残念ながら、それがあなたの正確な問題を解決するかどうかは、この特定のURLがどのように構築されているかに依存します。それがあなたの望むものを正確に実行しない場合でも、それはそのコードベースがあなたが必要とするものをより正確に構築するための素晴らしいスタートになるでしょう。


6

はい、プログラムで行うこともできます。

この例では、フロントページのキャッシュをクリアします。

$url = url('<front>',  array('absolute' => TRUE));

cache_clear_all($url, 'cache_page');

DrupalはパスをCIDとしてテーブルに保存し、上記の例では関数の最初の引数としてCIDとしてフロントページURLを提供しています。CIDを定義する場合、関数の2番目の引数$ binを定義する必要があります。どのテーブルからキャッシュを削除するかなどです。単一のページを削除する必要があるため、ページのキャッシュを保持するcache_pageに存在します。


3

そのためのモジュールがあります:ページキャッシュをフラッシュします。これについての引用は次のとおりです(モジュールのプロジェクトページから):

フラッシュする必要があるときの痛みの緩和... Drupalのキャッシュ。

大規模なサイトでDrupalのキャッシュをフラッシュすると、JFKの駐機場で離陸するのを待っているように感じることがあります。遅延は、Drupalのキャッシュをクリアすると、すべてがクリアされるために発生します。ほとんどの場合、ページ上の特定のオブジェクトのキャッシュをフラッシュするだけです。

「ページキャッシュのフラッシュ」モジュールは、単一ページのキャッシュされたオブジェクトのみをフラッシュすることにより、この問題を解決します。さらに、特定のページでクリアするカスタムオブジェクトとキャッシュテーブルを定義できます。



0

ここのパーティーには少し遅れますが、おそらくキャッシュ有効期限モジュールがあなたが探しているものです。これにより、複数のエンティティタイプでのキャッシュの利用方法をきめ細かく制御できます(2.xバージョンのモジュールを使用している場合)。

ただし、どちらのバージョンのモジュールでも、「ページキャッシュからURLをクリアする」というルールアクションにアクセスできます。したがって、ルールを起動するために必要なイベントと条件を指定すると、指定したURLが消去されます。お役に立てれば。


-1

キャッシュのクリアは、http: //drupal.org/project/drushからdrushモジュールをダウンロードするだけで実行でき ます。

terminal->your drupal directory

コマンドdrush ccを書きます

それはあなたを返すでしょう

[0]:キャンセル
[1]:すべて
[2]:ドラッシュ
[3]:テーマレジストリ[4]:メニュー
[5]:css-js
[6]:ブロック
[7]:モジュールリスト
[8]:テーマリスト
[9]:レジストリ
[10]:ビュー

したがって、クリアしたいものを選択できます。

あなたはdrupalのウェブサイトからの明確なキャッシュをしたいなら、あなたはモジュールをインストールし、有効にすることができhttp://drupal.org/project/admin_menu それはあなたのDrupalシレ上のホームアイコンを提供し、あなたが行くことができるメニューリストを与えるだろうキャッシュをクリアするためのもの...


1
彼は高度なカスタムキャッシュメカニズムについて質問しています
Codium

drush cc viewsたとえば、ビューがそのリストのどのタイプでもかまいません。
Yzmir Ramirez 2016
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.