Xserverを契約してブログを始めてから5日ほど経ってから気づいたのですが、
夜の22時~翌1時ごろまでなぜかこんなエラーが2、3日に一度起こっていました。
「アクセスが大量に発生しているための一時的なエラーです。時間を置いて再接続してください」
私が行った503エラーの対処方法を紹介します。
この503エラーが発生すると「アクセスが大量に発生しているための一時的なエラーです。時間を置いて再接続してください」というメッセージが表示されます。
メッセージからも分かるかと思いますが、契約しているサーバにアクセスが集中しているのです。
大抵は契約しているサーバには同時アクセス可能数の制限が設定されています。
制限がないと一度にアクセスが大量に発生した場合、サーバがダウンしてしまうためです。
なぜエックスサーバーで503エラーが起こる?
ブログ初心者やサーバのことに無知な方であれば、こんな疑問が出ないでしょうか。
「ブログにそこまでアクセス数ないんですけど…」
私はxserverで契約してから1週間の間に2,3回も503エラーが起こっていました。
ただ、アクセス(PV)数は10にも満たない状態だったのでエラーがなぜ起こるか不思議でなりませんでした。
1:共有サーバだから
一つの原因は共有サーバだったからでした。
私は無意識のうちにサーバは自分専用のマシンを契約していると思っていました。
でも実際に契約しているのは共有サーバでした。
契約するサーバは専用サーバと共有サーバの2種類があります。
専用と共有サーバを分かりやすく図にすると以下のような状態です。
共有サーバの場合、私のブログのアクセス数が0でも、ほかのブログのアクセス数が多ければ503エラーが起こってしまうのです。
2:ページ読込みが遅いから
WEBページを読み込むときに時間がかかっていることも考えられます。
細かい説明は省きますが、一つのWEBページを見るときに様々なファイルが私たちのブラウザとやり取りされています。
例えば、画像はpngやjpgなどのファイルですし、ページはHTMLやCSSというファイルでできています。
そういったファイルたちを読み込んでブラウザに表示するまでに時間がかかっているのです。
Webサイトの構造が原因で、読み込み完了までに時間がかかってしまうと、入場制限の人がたくさん発生する、いわゆる“渋滞”の状況に陥ってしまうんです。
上記が分かりやすい表現なので引用させていただきました。
WEBページへのアクセス渋滞が起こってしまい、503エラーが発生するということです。
503エラーを早めに対応すべき理由
解消できるならこのエラーは早めに対応すべきです。
理由は2つあります。
503エラー時はGoogle Adsenseの審査に落ちる
Google Adsence審査通過までにしたこと(2018/9情報)にも書いたのですが、
夜の22時頃から翌日1時ごろまで503エラーが発生し、翌日Google Adsenseの審査NGのメールが届くといことが2回も起きました。
原因は以下でした。
サイトは審査不能: https://loosecarrot.com を審査する際に、サイトがダウンしているか、表示できない状態でした。
503エラーを解消しないとGoogle Adsense側もアクセスができないため審査は間違いなく通過しません。
503エラー時は読者のアクセスができない
アクセス数が増えてくると影響は大きいと思いますが、読者が記事を読もうとしたときにエラーで見ることができません。
はじめてあなたのブログページにアクセスた読者なら、後でもう一度アクセスしてみようと思う方はほぼいないと思います。
いつもブログを見ていてファンだという方であれば、調子が悪そうだからまた後で見ようと思うとは思いますが…
広告などの収入の観点からも、アクセスが取れない = 収入の機会損失になっていると言えます。
503エラー対応のエックスサーバー設定
対応すべきことは、2つあります。
①共有サーバを専用サーバにする
②ページ読込み時間を改善する
①についてはお金もかなりかかるので、②のみ対応しました。
私がやった対応はmod_pagespeedをONにするでした。
設定はXserverのサーバーパネルから設定が可能です。
mod_pagespeedとは
mod_pagespeedに説明を簡単にしておきます。
Googleによって開発されたモジュール(ツールのようなもの)です。
WEBサイトと通信するときの様々なファイルがやり取りされています。
画像やCSS、HTMLファイルなどもその一つです。
やり取りするファイルを圧縮することでデータの通信量を抑えることができます。
そのおかげでWEBページの読込むスピードが上がるのです。
詳しくはxserverのページに解説がありましたので、興味のある方はご覧下さい。
エックスサーバーの設定方法
①サーバパネルからmod_pagespeedの設定をクリック
②対象のドメインを選択する
③ONにするをクリック
これで完了です。
まとめ
私はmod_pagespeedの設定だけで503エラーは解消しました。
他の原因であることも十分あり得るので、これで解決しなければ原因を探ってみてください。
根本原因は共有サーバであることかと思いますので、高いですが専用サーバを契約するのが良いのかもしれませんね。
各レンタルサーバでも専用サーバは契約可能なので、試してみても良いでしょう。
・Xserver
・ColorfullBox
・★LOLIPOP★
ただ、専用サーバは値段が高いので大規模なウェブサイトを作らないなら不要かと思います。
・mod_pagespeed設定とは
https://www.xserver.ne.jp/manual/man_server_mod_pagespeed.php
・Service Temporarily Unavailable 503エラー対策方法
https://shared-blog.kddi-web.com/webinfo/8
・503エラーを防ぐ!Web屋が知っておくべき503エラーの原因と対処
https://www.cpi.ad.jp/column/column01/