WordPressのようなオープンソースのプラットフォームを使用することには、利点と欠点があります。WordPressには高い柔軟性と拡張性がありますが、ある程度の専門知識が求められます。これはトラブルシューティングを行ったり、遭遇するエラーを解決したりしなければならない状況で特に顕著です。
例えば、PHPメモリ使用量の上限に達したことを伝えるエラーに遭遇することがあります。このようなエラーが表示されると、何が原因なのか、そしてどのように修正すれば良いのかがわからず、混乱してしまう人は少なくないはず。
幸い、このエラーの解決方法は至ってシンプル。WordPressを使い始めたばかりの方でも比較的簡単に解決できます。
今回は、WordPressのメモリ制限エラーの概要についてご説明し、このエラーが発生する主な原因、そして解決策を見ていきます。
WordPressのメモリ制限エラーとは
WordPressは安定性に優れたプラットフォームですが、エラーと無縁というわけではありません。時には画面が真っ白になったり(死の真っ白画面)、サイトがメンテナンスモードのまま固まってしまったりすることも。
ほとんどのWordPressエラーのトラブルシューティングや解決策は、そこで難しくありません。とは言え、原因やトラブルシューティング方法に関する情報があまりないため、WordPressに慣れていない人は途方に暮れてしまうなんてことも。
頻繁に遭遇するエラーの1つである、WordPressのメモリ制限エラーは、「PHPメモリ制限エラー」とも呼ばれ、空白のページに以下のようなメッセージが1行だけ表示されます。
fatal error: allowed memory size of 67108864 bytes exhausted
(致命的なエラー:許容メモリサイズ67108864バイトを超えました)
このエラーは様々な状況で発生しますが、次のような操作を行った際に見られるのが一般的です。
- プラグインやテーマのインストールおよび有効化
- 画像などのメディアのサイトへのアップロード
ウェブサイトには、さまざまなデータを保存するために一定量のメモリが必要になります。データベースやファイル、コンテンツ、プラグインやテーマによって追加されたコードなどがその一例です。
このメモリはホスティングサービスによって提供されます。サイト所有者は、訪問者にスムーズにサイトを配信するために必要なメモリを含むリソースが割り当てられたホスティングプランを契約します。
サイトの規模が大きくなったり、より複雑なプラグインやスクリプトを使用したりするようになると、このメモリの上限を超過することがあります。WordPressサイトの場合、PHPメモリ制限エラーが表示され、実行しようとしていたアクションを完了できなくなります。
WordPressのメモリ制限エラーを解決するには(2つの方法)
多くの一般的なエラーとは異なり、WordPressのメモリ制限エラーはトラブルシューティングが容易です。原因がはっきりしているため、どうすれば修正できるか試行錯誤する必要はありません。
PHPのメモリ使用量の上限に達した場合、解決策は2つしかありません。サイトに割り当てるメモリの量を増やすか、より上位のホスティングプランに移行するかのどちらかです。それぞれの解決策を掘り下げてみましょう。
解決策1. 質の高いWordPressホスティングに移行する
利用するホスティングプランによって、使用できるリソースが異なります。サイトが成長するにつれて、プランで決められたリソース量が不十分になる可能性があります。
ホスティング会社や利用しているプランによっては、WordPressのメモリ制限を変更できない場合もあります。
優れたWordPressホスティングを使用している場合、そもそもこのようなエラーに遭遇することはありません。というのも、通常WordPressサイトが適切に動作するのには十分すぎるほどのPHPメモリが割り当てられるためです。
状況にもよりますが、このエラーに対する最善の解決策は、マネージドWordPressホスティングに移行することです。現在使用しているプランをアップグレードする手もありますが、まずかカスタマーサポートに問い合わせて確認することをお勧めします。
共用サーバーをお使いの方は、より多くのスペースとリソースを提供する仮想専用サーバー(VPS)やクラウドホスティングにアップグレードする時期かもしれません。また、今後に備えて、サイトに割り当てるリソースを手軽に拡張できる柔軟性に富んだホスティングプランを選びましょう。
Kinstaでは、Google Cloud Platformを採用したWordPress専用マネージドホスティングを提供しています。
高速で安全なだけでなく、すべてのプランに十分すぎるPHPメモリ制限を設けています。メモリ関連のエラーに遭遇したら、ぜひ一度Kinstaのカスタマーサポートにお問い合わせください。カスタマーサポートに連絡をメモリ関連の問題が発生した場合は、当社のサポートチームにご連絡ください。他社のWordPressホスティングサービスからの無料サイト移行サービスも提供しているため、サイトを手間なく移行し、WordPressのメモリ制限エラーを速やかに解消することができます。
解決策2. WordPressのメモリ制限を引き上げる
すぐにWordPressホスティングを乗り換えることができない場合は、PHPメモリ制限を手動で増やしてみるという方法があります。どこまで引き上げられるかは、ご利用中のホスティング会社とプランに依存しますが、実際の上限よりも少ない量のメモリを使用しているということも珍しくありません。
サイトのメモリ制限を増やすには、Secure File Transfer Protocol(SFTP)経由でサイトにログインします。この作業を行ったことがない方は、まずSFTPクライアント(サーバー上のサイトのファイルに接続できるプログラム)をインストールしてください。
おすすめはFileZillaで、無料ですぐに使用することができます。
FileZillaをセットアップしたら(手順はこちら)、接続を行いましょう。サイトのSFTP認証情報は、通常ホスティングアカウントで確認できます。
FileZillaをセットアップして接続すると、以下のような画面が表示されます。
右上にはサイトファイルを含むフォルダが一覧表示されます。このフォルダを開いて、wp-config.phpというファイルを探しましょう。
このファイルには、サイトのデータベースと設定に関する特定の情報が格納されています。したがって、これから触れる特定のコード以外は変更しないように注意してください。万が一、誤って重要なものを削除したり変更したりした場合を想定して、作業を始める前にサイトをバックアップしておくことをお勧めします。
バックアップを作成したら、wp-config.phpファイルを開きます。
次の行を探してください。
define( 'WP_MEMORY_LIMIT', '256M' );
この数値が現在のメモリ制限を表しています(実際の数値はホスティングによって異なります)。なお、この行はない場合もあります。
この行がある場合は、単にこの数値を増やせばOKです。ほとんどのサイトでは、256MBで十分です。この行が見当たらない場合は、上記のコードを「That’s all, stop editing! Happy blogging.」の直前に貼り付けてください。
wp-config.phpファイルに変更を保存したら、FileZillaを閉じます。それからサイトを開いて、メモリ制限エラーが発生した操作を繰り返してみてください。エラーが表示されなくなれば、問題解決です。
それでもエラーが出る場合は、wp-config.phpファイルを開いて、メモリ制限をさらに増やしてみてください。数回試してもうまくいかない場合は、ホスティングプランで許可されている上限に達している可能性が高く、より優れたホスティングサービスへの移行を検討することをお勧めします。
まとめ
WordPressエラーは、十分な情報が得られないことが多く、遭遇するとイライラすることも。幸い、WordPressのメモリ制限エラーは他のエラーよりも単純です。原因がはっきりしているため、手を打ちやすくなります。
PHPメモリ制限のエラーを解決する方法は以下の2つです。
- 質の高いWordPressホスティングに移行する
- WordPressのメモリ制限を引き上げる
WordPressのメモリ制限エラーについて他にもご質問がある場合、またはKinstaの無料サイト移行サービスにご興味がある場合は、お気軽にカスタマーサポートまでお問い合わせください。