第3回の概要

WordPressサイト運用のコツということでお届けしている本連載ですが、第3回はWordPressサイトをレンタルサーバで構築・運用する際のコツについて。VPSやクラウドサーバと違って共用サーバならではの制限があるレンタルサーバで、負荷や制限と折り合いをつけながら安定したサイト運用を行う上で気をつけることなどをご紹介します。

レンタルサーバとは

ここでのレンタルサーバとは、複数ユーザが1台のサーバリソースを共用するサービスで、かつユーザは管理者権限を持たないものを前提とします。さくらインターネットではさくらのレンタルサーバというサービスを提供しています。1ヶ月515円と低価格のプランでもモジュール版PHPが利用でき高負荷にも耐えられ、電話サポートもついたコストパフォーマンスの高いプランです。

レンタルサーバでの制限

レンタルサーバでは1台のサーバを複数のユーザで共用するという性質上、1人のユーザがサーバリソース(CPU負荷や利用メモリ量、ディスク容量など)を使い切れないようにできています。また、運用設計上の事情でデータベースサーバが外部に置いてあったりします。そのため、管理者権限がもらえるVPSなどのホスティングサービスと違って細かい制限が入っている場合があります。

制限の一例

  • PHP/CGIの同時実行数制限
  • データベースの同時接続数制限
  • データベースの容量制限

WordPressとレンタルサーバの関係

さて、WordPressサイトをレンタルサーバで運用する場合、これらの制限について考慮する必要があります。WordPressの最大の特徴は、PHPによる動的処理を行うことで、プラグインやテーマへ様々な付加機能を与え、リアルタイムに実行できることです。静的ページを生成するタイプのCMSではユーザから取得した情報に応じて異なる内容を表示したり、ユーザの端末に応じてコンテンツを書き換えたりといった処理が簡単にはできませんでした。WordPressがここまで普及したのはそういった動的処理が簡単にできるところに起因するとも言えます。

そのWordPressの動的処理ですが、サーバにとっては負荷のかかる処理になってしまうのも事実です。例えば、WordPressのログイン画面へ外部から総当たり攻撃を受けた場合、総当たりで攻撃された回数分PHP処理が実行されるため、自分では意識していないしページのアクセスもそんなに多くないはずなのに、503エラーが出たり、ページの表示が重くなったりといった事態が発生する可能性があります。

もちろん、元々ページビューの多いサイトであれば、リクエストごとにPHP処理が実行されたり、それに伴ったデータベースサーバへのリクエストが増加したり、どんどん大量の処理が実行されていくため、制限に引っかかる確率も高くなります。

WordPressとレンタルサーバ、相性が悪いわけではありませんが、高負荷サイトを運営する場合は注意が必要です。

負荷制限に引っかかりにくくする方法とは

そんなレンタルサーバですが、安い、メンテの手間がかからない、メールサーバが手放せない、と言った理由でVPSなど管理者権限があるサービスへ移行ができない方も多いはず。ではレンタルサーバで賢くWordPressサイトを運用する方法を考えてみましょう。

プラグインを吟味する

WordPressが人気の所以の最たるものが、プラグイン機能です。WordPress本体に無い機能もプラグインを入れることで、バックアップ、レストア、人気投稿の表示、2段階認証、ECサイトの構築等々、多種多様の機能をWordPressサイトへ付加することができます。その反面、プラグインを適切に使わないと過剰なデータベースクエリを生成しサイトのパフォーマンスを下げる一因になります(例:人気投稿を表示するプラグイン)。

プラグインが多ければ悪いというわけではなく、プラグインによって処理の重いもの、軽いものがありますので、本当に必要そうなプラグインを吟味した上で、それでもパフォーマンスが悪い場合は個々のプラグインのON時OFF時でページ表示速度を比べてみるのが良いでしょう。

テーマの処理にも気をつける

WordPressはテーマでもPHP処理を実行することができるので、テーマの設定でGoogle Analyticsや広告タグなどの設定ができるものもあります。高機能なテーマはページのデザインや見た目、レイアウトからフォントまで設定できますが、それらの設定が本当に必要なものか、検討する必要があります。

キャッシュプラグインが効果的

色々と難しいことを並べてみましたが、負荷の軽減やサイトのパフォーマンスアップにはデータベースリクエストを減らすのが最も効果的です。そういった意味で、WP Super Cacheなどのキャッシュプラグインの利用は簡単で、かつ効果がわかりやすいです。環境によりますが、筆者がおこなった検証では、PHPのページ生成時間が1/5まで減るというぐらい劇的な効果がありました。

キャッシュプラグインの導入とともに、お使いのプラグインを見直して不要なプラグインを無効化するのもWordPressサイトパフォーマンスアップのコツです。

プラグイン精査とかやりきったけどまだパフォーマンスを上げたい

CDNを利用する

レンタルサーバの場合、サーバ側での設定値の変更やプログラムの追加によるパフォーマンスアップなどができないので、それ以上のパフォーマンスを求める場合はCDN(Content Delivery Network)の利用がおすすめです。さくらインターネットではウェブアクセラレータという名称でCDNサービスを提供しています。ウェブアクセラレータの利用方法などの詳細につきましては、ウェブアクセラレータでWordPressを無敵化!Service Temporarily Unavailable(503)エラーを出さなくする方法という記事を執筆いたしましたので、こちらも併せてごらんください。

CDNの従量課金という特性上、常時利用をためらわれる方も多いですが、さくらのクラウド ウェブアクセラレータは1GiB 5円という格安価格を実現し、利用のハードルがかなり低くなっています。どうしてもサイトを落としたくない!という方はCDNの利用も検討してみてください。

レンタルサーバではそもそも無理なことも

CDNを使うのはサーバを落とさない近道ではありますが、CDNはあくまでページのキャッシュを配信する機能です。1秒もキャッシュしたくないというリアルタイム性の高いコンテンツや、そもそもキャッシュができない個人情報などを扱うサイトの場合CDNの利用は難しくなってきます。この場合は、サーバ構成を負荷耐性の高いものへ変更する必要がありますので、レンタルサーバではなく、VPSやクラウドサーバを利用した複数台構成への移行が必要となってきます。

まとめ

今回はレンタルサーバとWordPressの付き合い方ということで、いくつかの対応方法をご紹介しました。少し内容が濃かったので最後にまとめておきます。

  • レンタルサーバはVPSやクラウドサーバと比較して使えるサーバリソースに制限がある
  • テーマやプラグインは負荷の低いものを選ぶ
  • キャッシュプラグインは手軽で効果大
  • CDNを使うという選択肢がある
  • 場合によってはレンタルサーバでは賄えない場合も

いかがでしょうか。さくらのレンタルサーバでは2018年4月18日より、スタンダードプランでも高速なPHP実行環境が実現できるバージョンアップを行っております。それにより、かなり負荷が上がった状態でもページを高速に表示できるようになりました。個人のブログを1つWordPressで立ち上げるといった場合などは何も考えずにスタンダードプランを選んでほぼ間違いなくなっています。

さくらインターネット以外でも、多くのレンタルサーバでWordPressが快適に使えるような機能追加やバージョンアップを行っており、大抵の方がレンタルサーバの制限を気にせずにWordPressを利用できるようになってきましたが、企業サイトや高トラフィックのアフィリエイトサイトなどを複数運営される場合など、負荷が高めの運用をする場合はこういったポイントを気にしてみると、意外なところでボトルネックが見つかるかもしれません。

さて、次回は第4回、WordPressサイトのセキュリティについてということで、WordPressサイトのセキュリティ設定で気をつけること、これだけは最低限やりましょう、といったことをご紹介していきたいと思います。