先月の27日に、当ブログが深刻な 503エラーを起こしてしまい、一時的に閲覧できない状態が続いてしまいました。503エラーは翌日の昼頃まで続き、その結果ユニークアクセス数が半分近くまで落ちてしまうことになります。
ちなみに、過去にも503エラーが頻発することはありました。年に2回ぐらいなので、ごくたまにではありますけど。
これ、当初は「急激なアクセス増が原因なのでは?」と思っていましたが、それ以外にも原因の元となるものがあるようです。
503エラーが発生する主な原因
503エラーが発生する原因として挙げられるのは、以下のようなものです。
- 当該ウェブサイトに瞬間的に多数のアクセスがなされ、サーバーが処理不能に陥った。
- サーバーがメンテナンス中などで機能していなかった。
- サーバ内の最大データ転送量を超過した。
- 同一サーバ内の他のサイトへのアクセスの集中。
Wikipediaより引用
当ブログで使用している『さくらのレンタルサーバ』は共用サーバーなので、確かに "同一サーバ内の他のサイトへのアクセスの集中" は無くはないとは思いますが・・・こればっかりは他人が原因なので、同一サーバーを使い続けたいのであれば泣き寝入りするしかありません。サーバーメンテナンスも同様で、ユーザー側では対処のしようが無いのであきらめるしかないでしょう。
となると、個人レベルで何とか対処可能なのは "大量アクセス" と "データ転送量の超過" 辺りになるかと思います。
個人レベルでできそうな 503エラー対処法
動画を埋め込み過ぎない
音楽系の記事を書く際に YouTube動画を埋め込むことが多いのですが、割と何も考えずに10~15個ぐらい1つの記事に貼り付けていました。
テキストメインのブログなら問題ないアクセス数でも、動画をたくさん埋め込んだ記事だと少ないアクセス数でも負荷が掛かるようです。
反省して、今後は動画の多用は避けようと思います。埋め込むとしても、せいぜい1記事あたり動画1~2個ぐらいまでが現実的かもしれません。
画像は必ず圧縮して使う
動画の大量埋め込みほどではありませんが、画像をたくさん使った記事も 503エラーの原因になる場合があります。
どちらかと言えば、後述の "同一記事を短時間で頻繁に更新する" ことによって 503エラーが発生するパターンが多いですが、いずれにしても負荷が掛かっているのは間違いありません。
一番無難なのは "画像を一切使わずにブログを書く" ことです。
ただ、これはさすがにムリがありますよね。なので、最低限 "画像は圧縮して使う" ということだけは守りましょう。一手間増えるので面倒ですが、長い目で見ると大きな差になってくるはずです。
関連記事
PNG/JPG画像をサクッと圧縮できる『tinyPNG』の使い勝手が良い!
画像を数枚用意するだけで簡単に作れる!GIFアニメ(GIF動画)の作成&圧縮方法
高画質と省ファイルサイズは両立できる!PNG・JPG・GIFの効果的な使い分け方
記事の投稿や更新は時間を空けて行う
これも結構多いですね。とりわけ、画像を多用した記事の頻繁な投稿・更新は非常に危険です。
例えるなら、こういう記事のことを指します↓
関連記事
『GPD XD』レビュー:MFiコントローラブームに乗り遅れたiPhone/iPadゲーマーのための格安ゲーミングタブレット
以前 503エラーが発生した時は、上記記事の内容を何度も書き換えて短時間に更新しまくったのが原因でした。
このようなシチュエーションで1度でも 503エラーが発生した場合は、最低でも1時間は間隔を空けることをオススメします。極端な話、半日~1日ぐらい空けても良いぐらいです。
何度もエラーが出るからといってイライラして記事更新に固執すると、即アクセス制限が掛けられてしまいますのでご注意ください。
キャッシュプラグインを導入する
WordPress でブログを運営されているのであれば、キャッシュプラグインを入れるという手もアリです。
先日の一件があって以降、当ブログでは『WP Super Cache』を導入しています。
ダウンロード
キャッシュプラグインと言えば、もう一つの雄である『W3 Total Cache』なんかも有名ですね。
また最近は、上記2つより使いやすいと評判のプラグインも出てきているようです。キャッシュを削除する方法が簡単とのことで、良さげだったら当ブログでも導入してみようと思います。
参考記事
WordPressキャッシュプラグインの最終兵器「WP Fastest Cache」|Web Shuhu
初心者にも扱いやすいWordpressキャシュプラグイン「WP Fastest Cache」の使い方|寝ログ
正直、キャッシュプラグインを入れると "ブログのカスタマイズ" や "記事の更新" がすぐに反映されないことが多いため、今まで導入していませんでした。
「キャッシュプラグインは、アクセス数が多いブログ以外は無理に入れなくても良い」との声もありますが、画像や動画を多用するタイプのブログは必須かもしれません。
実際、キャッシュプラグインを入れて以降エラーは見かけなくなりましたし、ベンチマークサイトで計測した際のスコアも上がっています。
海外からのアクセスを遮断する
盲点だったのが "海外からの大量アクセス" というパターンです。私の環境ではおそらく発生していないとは思うのですが、被害に遭われている方も結構いらっしゃるとのこと。
こういった場合は、.htaccess ファイルを編集して海外からのアクセスを制限することで解決する場合もあります。
ダウンロード
IPアドレスで日本国外(海外/外国)からのアクセスを制限する.htaccess
使い方は、ググると結構出てきます。ブロガーさんによって記述が異なるみたいなので、色々と試してみると良いかもしれません。
ちなみに .htaccess ファイルは、『FFFTP』でディレクトリを掘っていった時に index.php や index.html と同じ場所に格納されています。
別のレンタルサーバーにお引っ越しする
結局 503エラーの原因を調べていると、さくらサーバーがよく出てくるんですよね。知名度が高い老舗レンタルサーバーなので、矢面に立ってしまっているというのもあるとは思いますけど。
実を言うと『さくらインターネット』は、大量アクセスに比較的強いサーバーだったりします。
参考記事
同時アクセス数で『さくらサーバーとエックスサーバー』両方落としてみた|三十路男の悪あがき
その一方で "負荷の掛かるページに弱い" という欠点を抱えています。
繰り返しになってしまいますが、つまりは "画像・動画の大量使用にあまり向いていない" サーバーだということです。
そこで、お引っ越し先としてよく名前が挙がるのが『エックスサーバー』になります。
数年前にお試しで一度使ってみたことがあるのですが、当時の私のレベルでも理解できるぐらいコントロールパネルが使いやすかったのが印象的でした。
もっとも、エックスサーバーは『A8.net』に広告を出しているため、アフィリエイターが報酬目当てで紹介しやすいという側面もゼロではないとは思います。
とは言え、実際エックスサーバーで運営されている方のブログにアクセスしてみると、確かに記事がサクサク表示されるんですよね。WordPress管理画面もサクサクなので、魅力的なサーバーではあります。
"リソースブースト" を使う(さくらインターネット限定)
なお、さくらインターネット社も自身の弱点を気にしてか、2015年4月に "リソースブースト" という機能を提供開始しています。
参考リンク
コントロールパネルから [運用に便利なツール] → [リソース情報] → [リソースブースト] の [有効にする] ボタンをクリックすることで、2日後の24時まで大量アクセスに備えることが可能です。
ただし、次回使用までに14日間待たなければいけないため、ブーストが切れても大量アクセスが続く場合はあきらめるか、別の対処法を探すしかありません。超必殺技みたいな機能だなぁ・・・
例えるなら "スーパーやコンビニの開店直後で本部社員が手伝いに来ている" ような感じでしょうか。
ただ、503エラーの大量発生を事前に知ることは不可能ですし "発生を確認してから手動で対処する" ことになるので、完璧なツールとは言い難い部分もありますね。
とは言え、無いよりは全然マシですし「これはバズりそうだな」という記事が書けたらリソースブースト機能を有効にすることで、ある程度の機会損失は防げるかと思います。さくらサーバー利用者の方は覚えておくと良いでしょう。
最後に
とりあえず当ブログはコンテンツ的に、さくらサーバーと相性が悪いということだけは何となく理解できました。画像はともかく、動画の大量埋め込みは今後控えたほうが良さそうです。
ともあれ、現在利用しているレンタルサーバーの特性を知ることで、引っ越すべきか否かの判断もしやすくなるでしょう。
できる対処法を全て試した上で「もうお手上げだ!」というところまで来たら、サーバーの移行を検討されても良いのではないかと思います。
最新情報をお届けします