WPスーパーキャッシュに関するいくつかのFAQ
- 24-07-2022
- chuong xuan
- 0 Comments
WPスーパーキャッシュに関するいくつかのFAQ
プロジェクトに所属: WordPressユーザーガイド(初心者向け)
WPスーパーキャッシュプラグインは、動的なWordPressブログから静的なhtmlファイルを生成します。 htmlファイルが生成されると、Webサーバーは、より重くて高価なPHP(WordPress)スクリプトを処理する代わりに、それを使用します。
静的htmlファイルは大多数のユーザーに提供されます。
- ログインしていないユーザー。
- ブログにコメントを残さないユーザー。
- または、パスワードで保護された投稿(パスワードで保護された投稿)が表示されないユーザー。
Webサイト訪問者の99%は、静的なhtmlファイルによって提供されます。キャッシュファイルは何千回も使用できます。他の訪問者は、彼らのために特別に設計されたカスタムキャッシュファイルによって提供される場合があります。彼らがログインするかコメントを残すと、それらの詳細が表示され、キャッシュされます。
プラグインは、3つの方法でキャッシュファイルを提供します(速度ランキングでランク付け)。
- エキスパート。最速の方法は、Apacheのmod_rewrite(またはWebサーバーがサポートする同様のモジュール)を使用して、「スーパーキャッシュ/スーパーロード」された静的htmlファイルを提供することです。 PHPを完全に上回り、超高速です。サーバーがトラフィックの影響を受ける場合、この方法は「軽い」クエリを処理する可能性があります。これには、Apache mod_rewriteモジュール(カスタム静的リンクを使用できる場合は、おそらくすでにインストールされています)と.htaccessファイルへの微調整が必要です-ただし、.htaccessファイルを編集すると、誤って修正するとサイトにアクセスできなくなる可能性があるため、注意が必要です。
- シンプル。スーパーキャッシュによって生成された静的ファイルはPHPによって提供できます。このため、このプラグインの使用をお勧めします。プラグインは、「超静的」ファイルが存在する場合はそれを提供し、mod_rewriteメソッドとほぼ同じ速度です。 .htaccessファイルを変更する必要がないため、設定も簡単です。あなたはまだカスタムパーマリンクが必要です。このキャッシュモードでは、ページのセクションを動的に保持できます。
- WP-キャッシュスタイルのキャッシュ。これは主に、既知のユーザーのページ、パラメーターとフィードを含むURLをキャッシュするために使用されます。既知のユーザーは、ログインユーザー(ログインユーザー)、コメントを残す訪問者、またはユーザーに基づいてカスタムデータを表示する必要がある訪問者です。これは最も柔軟でやや遅いキャッシュ方法です。 WP-Cacheは、ハイパーキャッシュが無効になっている場合、ログインしていないユーザーのページもキャッシュします。このモードでは、ページの動的セクションを作成することもできます。このモードは常にオンですが、ログインしたユーザー、パラメーター化されたURL、または個別のフィードのキャッシュを無効にすることができます。 WP-Cacheメソッドを使用するだけの場合は、wp-config.phpファイルで「DISABLE_SUPERCACHE」定数を1に設定します。
PHPファイルの編集が気に入らない場合は、簡単な方法を使用してください。セットアップは非常に簡単で、非常に迅速です。
Mục lục
推奨設定
- シンプルキャッシュを使用します。
- ページを圧縮します。
- ログインしたユーザーのページをキャッシュしないでください。
- キャッシュの再構築。
- CDNサポート。
- ホームページテストを展開します。
ガベージコレクションは、古くて古いキャッシュファイルをクリーンアップする行為です。有効期限を設定する正確な値はありませんが、適切な開始時間は1800秒です。
「ユーザーエージェントの拒否」テキストボックスの内容をクリアして、マシンにキャッシュファイルを検索させることを検討してください。
「プリロードモード」を有効にして、できるだけ多くの記事をプリロードします。古いキャッシュファイルの収集は無効になります。ウィジェットのサイドバーが頻繁に更新されることを気にしない場合は、プリロード間隔を2880分(2日)に設定して、すべての投稿が頻繁にキャッシュされないようにします。プリロードを有効にすると、更新中の記事のキャッシュファイルが削除されてから再作成されます。次に、ガベージコレクターはすべての古いファイルを収集して、古いキャッシュファイルを削除します。キャッシュファイルのプリロードが有効になっている場合でも、投稿が編集またはコメントされると、そのキャッシュファイルは削除されます。
ガベージコレクション
キャッシュディレクトリは時間の経過とともにいっぱいになり、サーバー上のスペースを占有します。ストレージが限られているか高価である場合、またはサイトのキャッシュページが古すぎることが心配な場合は、ガベージコレクションを実行する必要があります。ガベージコレクションは定期的に行われ、キャッシュフォルダ内の古いファイルを削除します。詳細設定では、以下を指定できます。
- キャッシュタイムアウト(キャッシュ有効期限)。キャッシュファイルを確認して更新する頻度はどれくらいですか?この時間が経過すると、それらは廃止されたと見なされ、削除できます。
- スケジューラー(スケジューリング)。ガベージコレクターを実行する頻度を設定します。
- 通知メール(メールによる通知)。ガベージコレクションの進捗状況を知ることができます。ガベージコレクションの正しい設定も間違った設定もありません。それはあなたのウェブサイトに依存します。
ページが頻繁に更新されるかコメントがある場合は、タイムアウトを1800秒に設定し、タイマーを600秒に設定します。
ページがめったに(ほとんど静的に)変更されない場合は、タイムアウトフィールドに0を入力するか、非常に大きなタイムアウト値を使用して、ガベージコレクションを無効にできます。
キャッシュディレクトリ(通常はwp-content / cache /)は、一時ファイルを保存する場所にすぎません。重要なファイルや重要なフォルダをこのフォルダに入れないでください。プラグインに書き込み権限がある場合は削除されます。
キャッシュをカスタマイズする
これで、add_cacheaction()関数を使用してキャッシュプロセスに関与(フック)できるようになりました。
利用可能な3つの「フック」があります。
- 「wp_cache_get_cookies_values」–WPキャッシュで使用されるキーを編集します。
- 「add_cacheaction」–フェーズ2で実行されます。プラグインがWordPressフックを追加できるようにします。
- 「cache_admin_page」–管理ページで実行されます。おそらく新しい構成オプションを追加することにより、そのページを編集するために使用します。
通常のWordPressフィルターもあります。 「do_createsupercache」フィルターを使用して、事前キャッシュチェックをカスタマイズします。フィルタは1つのパラメータを許可します。 WP-Cacheのwp_cache_get_cookies_values()関数の出力。
プリロード
プリロードを介して、Webサイトの投稿、フォルダー、およびタグのキャッシュファイルを作成できます。プリロードは、サイトの他の訪問者と同じように、サイトの各ページにアクセスしてキャッシュされたページを作成します。この関数はシーケンシャルな性質を持っているため、サイトに多数の投稿がある場合、プリロードが完了するまでに時間がかかることがあります。
より効率的なプリロードを行うには、ガベージコレクションを無効にして、古いキャッシュファイルが削除されないようにすることが役立ちます。これは、設定で「プリロードモード」を有効にすることで実行されます。ただし、ページは最終的には廃止されますが、コメントを投稿したり投稿を編集したりして更新すると、キャッシュの一部がクリアされることに注意してください。
CDN
コンテンツ配信ネットワーク(CDN)は通常、世界中のコンピューターのネットワークであり、最も近いサーバーを使用してWebサイトのコンテンツをより高速に提供します。画像、JavaScript、CSSなどの静的ファイルは、これらのネットワークを介して提供され、ページの読み込みを高速化できます。メインドメインのサブドメインを使用して「貧乏人のCDN」を作成し、静的ファイルを提供することもできます。
OSSDL CDNオフリンカーがWPスーパーキャッシュに統合され、基本的なCDNサポートを提供します。これは、サーバーのwp-contentおよびwp-include内のファイル(.phpファイルを除く)のURLを書き換え(書き換え)して、それらが異なるホスト名を指すようにすることで機能します。多くのCDNは「オリジンプル」をサポートしています。これは、CDNが最初のリクエストを受信すると、サーバーからファイルを自動的にダウンロードし、サーバーからファイルをリロードする前に、構成された時間だけファイルを提供し続けることを意味します。 。
プラグイン設定ページの「CDN」タブでこの構成を編集します。これは技術的に高度であり、サーバーまたはCDNがどのように機能するかについての基本的な理解が必要です。 CDNを微調整した後は、必ずキャッシュファイルをクリアしてください。
考えられるエラーを修正する
プラグインのインストール時に何かが正しく機能しない場合は、次の点を確認してください。
- wp-Webサーバー(Webサーバー)で書き込み可能なコンテンツ?
- wp-content / wp-cache-config.phpファイルは存在しますか?そうでない場合は、ファイルwp-super-cache/wp-cache-config-sample.phpをwp-content/wp-cache-config.phpにコピーし、WPCACHEHOMEが正しい場所を指していることを確認します。
- wp-content / Advanced-cache.phpファイルは利用できますか?それ以外の場合は、wp-super-cache/advanced-cache.phpをwp-content/にコピーする必要があります。ファイルを編集し、wp-super-cacheフォルダーを指すようにパスを変更する必要があります。
- ページがまったくキャッシュされていない場合は、上記の手順に従って、wp-content / Advanced-cache.phpを削除し、再作成します。
- 以下の太字の行がwp-config.phpにあり、「require_once(ABSPATH.'wp0settings.php')」の行の上にあることを確認してください。define ('WP_CACHE'、true);
- [設定]->[WPスーパーキャッシュ]を再試行して、キャッシュを有効にします。
- wp-content / cache /supercache/を見てください。そこにフォルダやファイルはありますか?
- error_log phpファイルには何が含まれていますか?
- スーパーキャッシュをインストールした後もブラウザからファイルの保存を求められる場合は、スーパーキャッシュのコンプレッサーを無効にする必要があります。 [設定]->[WPスーパーキャッシュ]ページに移動し、ここで無効にします。
- プラグインは、PHPセーフモードが有効になっているとうまく機能しません。管理者はそれを無効にする必要があります。
- ページが非常にランダムにキャッシュされ、場合によってはキャッシュされない場合は、URLに「www」と「www以外」の両方のプレフィックスを付けてブログを表示できます。古いWordPressインストールを使用している場合は、プラグインを選択してwww-priority施行プラグインをインストールする必要があります。最新バージョンはそれ自体をリダイレクトします(とにかく最新バージョンのWordPressを実行している必要があります)。
- Dreamhostのプライベートサーバーユーザーは、CPU使用率の増加に関するエラーが発生した場合、wp-content / wp-cache-config.phpファイルを編集し、キャッシュディレクトリを「/tmp」に設定する必要があります。
- 「キー0x152bの取得に失敗しました:アクセスが拒否されました…/キー0x152bを取得できませんでした:アクセスが拒否されました…」または「ページがWPスーパーキャッシュによってキャッシュされていません」などのファイルロックエラー。ミューテックスロックを取得できませんでした。/ページはWPスーパーキャッシュによってキャッシュされません。ミューテックスをロックできません。 「」は、ファイル/ファイルロックを使用していることを示します。wp-content/ wp-cache-config.phpを編集し、「$ use_flock = true」のコメントを解除するか、$sem_idを別の値に設定します。最後の手段としての管理画面。
- rawファイルロックが使用されている場合は、cache/wp_cache_mutex.lockがWebサーバーによって書き込み可能であることを確認してください。
- キャッシュディレクトリは、NFSまたはSamba共有またはNASに設定できません。ローカルディスク上にある必要があります。キャッシュフォルダがローカルマシン上にない限り、ファイルのロックと期限切れファイルの削除は正しく機能しません。
- WordPressがwp-cron.phpを見つけられない場合、古いファイルクリーナーは機能しません。ホスト名が127.0.0.1を指している場合、ガベージコレクターが機能しない可能性があります。 access_logsでwp-cron.phpエントリを確認してください。彼らは404(ファイルが見つかりません)または200を返しますか? 404コードの場合、またはwp-cron.phpがどこにも表示されない場合、WordPressはおそらく間違った場所でそれを探しています。サーバー管理者に、Unixサーバーでこれを編集または修正して、次の行を削除するように依頼する必要があります。ホスト名は、ネットワーク/インターネットで使用されているものとは異なる外部IPアドレスを指している必要があります。詳細については、https://yoast.com/wp-cron-issues/の記事も参照してください。 「127.0.0.1localhostlocalhost.localdomain」のような行で問題ありません
- スーパーキャッシュを介して訪問者がレガシーページを利用できるようにすると、Apacheモジュール(またはApacheを使用していない場合は同等のモジュール)が失われる可能性があります。次の3つのモジュールが必要です:mod_mime、mod_headers、mod_expires。最後の2つは、ブラウザがページ上の既存のページの新しいバージョンを確実にロードするために特に重要です。
- エラーメッセージ、「WPスーパーキャッシュはインストールされましたが、破損しています。 wp-content/advanced-cache.phpのwp-cache-phase1.phpへのパスを修正する必要があります。 / WPスーパーキャッシュはインストールされていますが、問題があります。 wp-content/advanced-cache.phpのwp-cache-phase1.phpへのパスを修正する必要があります。 」はすべてのページの下部に表示されます。お気に入りのエディターでwp-content/advanced-cache.phpファイルを開きます。 wp-cache-phase1.phpへのパスは正しいですか?このファイルは通常、wp-content / plugins /wp-super-cache/にあります。正しくない場合、キャッシュのロードに失敗します。
- キャッシングは機能しません。リロードすると、ブログのタイムスタンプが変わり続けます。 .htaccessで設定したルールのパスがスーパーキャッシュディレクトリと一致することを確認してください。あなたはそれをエンコードしなければならないかもしれません。スーパーキャッシュモードを無効にしてみてください。
- スーパーキャッシュキャッシュファイルが生成されても提供されない場合は、wp-content / cache / supercache(および各wp-contentキャッシュとスーパーキャッシュフォルダー)およびwp-content / cache/.htaccess内のすべてのフォルダーのアクセス許可を確認してください。 PHPがApacheとは異なるユーザーとして実行され、権限がstrict / strictである場合、ApacheはPHPによって生成されたキャッシュファイルを読み取ることができない場合があります。編集するには、wp-config.phpファイルに次の行を追加する必要があります(これはWP_CACHEの定義の上にあります)。次に、キャッシュをクリアします。 umask(0022);
- プラグインで圧縮を有効にした後、ブラウザにジャンクファイルが表示される場合は、Webサーバーで圧縮が有効になっている可能性があります。 Apacheではmod_deflateを無効にする必要があります。そうでない場合、PHPではzlib圧縮を有効にできます。 3つの方法で無効にできます。ルートアクセス権がある場合は、php.iniを編集し、設定zlib.output_compressionを見つけて「オフ」になっていることを確認するか、.htaccessに次を追加します。php_flagzlib.output_compressionを無効にします。それでも機能しない場合は、wp-config.phpに次を追加します。ini_set('zlib.output_compression'、0);
- Webサイトにアクセスしたときの「死の白い画面」または空白のページは、ほぼ確実にPHPエラーが原因ですが、APCが原因である可能性もあります。問題がある場合はPHP拡張機能を無効にし、eAcceleratorまたはXcacheに置き換えます。
- アンインストール後、mod_rewriteルールも削除すると、静的リンクが壊れることがあります。 [設定]->[パーマリンク]に移動してこれらのルールを再作成し、フォームを再保存します。
- ページの読み込みが拒否された場合は、wp-config.phpが正しく設定されていることを確認してください。 PHPの開始タグまたは終了タグを見逃しましたか?
- あなたのホームページは大丈夫ですが、投稿とページは404の結果を返しますか?静的パス構造を選択したら、[設定]-> [パーマリンク]に移動し、[保存]をクリックします。 .htaccessファイルを手動で更新する必要がある場合があります
- 一部の文字がWebサイトに正しく表示されない場合は、サーバーが正しく構成されていない可能性があります。使用する文字セットを訪問者に知らせる必要があります。 [設定]->[ページとフィードのエンコード/ページとフィードのエンコード]の値を読み取ってコピーします。 SupercacheとWordPressの書き換えルール全体を使用して.htaccessファイルを編集し、それを先頭に追加して、CHARSETコピー値を置き換えます。 (例:'UTF-8'):AddDefaultCharset CHARSET
- Cron Viewを使用して、プリロードとガベージコレクションの問題を診断します。プラグインを使用して、ジョブがスケジュールされていることとその時刻を確認します。 wp_cache_gcフックとwp_cache_full_preloadフックを見つけます。
- エラーメッセージ「WPスーパーキャッシュはインストールされていますが、破損しています。 WPCACHEHOMEはwp-config.phpファイルで設定し、各ページの下部に表示される「WPスーパーキャッシュプラグイン」フォルダーを指す必要があります。 wp-content / Advanced-cache.phpを削除してサイト設定を再読み込みするか、wp-config.phpを編集してWPCACHEHOMEを検索し、それがwp-super-cacheフォルダーを指していることを確認します。通常はwp-content/plugins / wp-super-cache /ですが、おそらくファイルへのフルパスが必要になります(設定ページの修正が簡単になります)。正しくない場合、キャッシュはロードされません。
- プラグインで使用されるセマフォの数が原因でサーバーに問題が発生している場合は、ユーザーがファイルロックを使用していることが原因である可能性があります。これは推奨されていません(ただし、一部のユーザーにのみ必要です)。小規模ユーザー)。定数WPSC_DISABLE_LOCKINGを定義するか、定数WPSC_REMOVE_SEMAPHOREを指定して、キャッシュされた各ページの後にsem_remove()が呼び出されるようにすることで、すべてのファイルロックを無効にできますが、処理要求に問題が発生するようです。セマフォとは異なります。無効にすることをお勧めします。
- プラグインがこのファイルを誤ったディレクトリで見つけた場合は、wp-config.phpまたはwp-cache-config.phpの$htaccess_path変数をグローバル.htaccessパスに設定します。これは、WordPressを通常とは異なる方法でインストールした場合に発生する可能性があります。