ページの読み込み速度が遅い。問題はサーバー側にあった。
PV数もアクセスもとりあえず上々の状態である当サイト。アクセスのほとんどが検索サイトからという状態で、様々なキーワードで閲覧しに来てくれています。もともとは山林メインで書いていくつもりだったのですが、ネタもないし、山林ばかりだと私が飽きてしまうので、最近では好き勝手書いています。そのためかアクセスは上がるもののリピーターにはつながりません。
当サイトのファンが増えてくれるとよいのですが、すり寄らずに好き勝手やっているサイトでは、なかなか増えないものですね。
アクセスが増えたのはよいのですが、恐らく更新頻度を下げればそのまま忘れられてしまうサイトとなってしまうので何とか頑張って更新しています。それと、これまで問題だった部分の改善に着手しました。
ページの読み込み速度が遅い
ページの読み込み速度はSEO的にも問題で、また訪問者の直帰率にもつながります。サイトを開いたはよいが白いままだと、イライラして戻るボタンを押してしまいます。これは私も同じで、読み込み速度が遅い、重いサイトは敬遠してしまいます。
私のサイトは読み込み速度が遅い。
以前からGoogle先生に怒られておりました。
Google先生がサイトの読み込み速度を計測、そして以下の問題点の改善策を提示してくれます。
・画像を最適化する
・スクロールせずに見えるコンテンツのレンダリングをブロックしている JavaScript/CSS を排除する
・表示可能コンテンツの優先順位を決定する
・JavaScript を縮小する
・CSS を縮小する
・HTML を縮小する
・リンク先ページのリダイレクトを使用しない
・圧縮を有効にする
・ブラウザのキャッシュを活用する
・サーバの応答時間を短縮する
40点という落第点数。
とりあえず遅いため色々と改善をします。
・画像を最適化する
画像の最適化とは画像データサイズの縮小に関してです。
データサイズが大きければ、画質が良いというわけではありません。圧縮の仕方によっては画質が悪いけれども容量が重い画像データもあるわけです。パソコンでは表示できない画質というものもあります。それであればそんな重い画像を使うのではなく、適切なものにしていこうよ、というのがこの項目です。画像の圧縮に関しては画像編集ソフトかウェブサービスを利用するのが望ましいでしょう。私は以下のサイトを活用しています。
画像をドラッグ&ドロップで圧縮してくれます。これをすることでかなり軽量な画像を作成できます。画像編集ソフトを立ち上げるより楽な作業です。しかし圧縮するため画質が多少悪くなることもあります。ここについては表示したい画像をどのように利用するかで変わってくるでしょう。私のようなそもそも構図がクソみたいな写真なのであれば圧縮して閲覧者の負担を減らした方が良いわけですよね。
・スクロールせずに見えるコンテンツのレンダリングをブロックしている JavaScript/CSS を排除する、表示可能コンテンツの優先順位を決定する
ファーストビュー、つまり一番最初に表示されるのはウェブサイトの上の部分です。よほど縦に長いブラウザを使用しない限り、フッターの部分は見えないですよね。見えないのであれば後から読み込めばいいじゃないというのがここの項目です。下の方はスクロールしなければ見れないわけなので、とりあえず見れるところをすぐ読み込むようにしましょうということです。そうすれば無駄な読み込みが減り、表示しやすくなるわけです。
私のサイトはスタイルシートを外部、つまりCSSファイルを利用しています。CSSファイルにしておけば、それを更新すればすべてのページに反映することができます。またページ単位のHTMLコードも綺麗な状態に保てます。そのためインラインでスタイルを利用していません。しかしファーストビューのことを考えると、インラインで書き込むべきということのようです。
ファーストビューの部分だけインライン。それ以外は外部CSSで遅延読み込み。理論はわかるのですが、管理の部分を考えるとあまり好ましくないですね。
・JavaScript、CSS、HTMLを縮小する
ここの項目は、無駄なものをなくしていきましょうってことなのでしょう。例えば改行も微々たるものですが容量を喰います。つまり改行をせずにびっちりつめて書いていけというのが速度向上の一つ見たいです。しかしこちらもメンテナンス上あまり望ましいとは思えません。一行にまとめられると、見づらいですからね。閲覧者はソースコードを見ませんが、管理している私はソースコードで見ているので見づらくなるのは作業低下につながります。
無駄なタグなどは排除していってますが、改行を削るまでのことはしません。
・リンク先ページのリダイレクトを使用しない
恐らく、貼ったリンク先がどうなのかというのが重要なのだと思います。サイトによってはスマホ用とPC用に分け、ユーザーエージェントを判別してページをリダイレクトするという方法をとっているのもあるのだと思います。当サイトはレスポンシブデザインにしているのでとくにリダイレクトをかけているページはありません。とくにこの部分で原点は無いのでしょう。
・圧縮を有効にする、ブラウザのキャッシュを活用する
圧縮、つまりZIPファイルとかに圧縮するあれです。圧縮すればファイルサイズも小さくできるわけで、その分読み込み速度も速くなるという魂胆です。
「mod_deflate」「mod_expires」などを使って圧縮ファイルを代替したりしていきます。当サイトは二週間キャッシュを残すような形にしています。
それでも速度が上がらない
私はこれまで上記作業を定期的に行ってきました。
しかし多少は改善されたものの、根本的に遅いのです。一番の問題点は以下です。
・サーバの応答時間を短縮する
速度の速いサイトを作ったとしても、そもそもサーバー自体がクソ速度なのであれば意味がありません。
サーバーの応答速度を速めるためにPHPを最新のものに変えました。しかし効果はありません。またキャッシュ系のプラグインも導入しました。それでもなお遅いままです。
キャッシュ系プラグインは過去に何度も入れ替えています。理由は不具合が多いから。ちょっと触るとエラーを吐き出すため、停止したりしていたのですが、あまりにも速度が遅いため、試しに再度入れてみました。「WP Fastest Cache」というものですが、今のところ概ね良好です。
多少は良くなったのですが、それでも良好とまではいきません。
一番の問題は「お名前ドットコム」のサーバーだった。
これまで色々と試行錯誤してきましたが、万策尽きました。それでも速度は遅いまま。この遅い原因、サーバーに問題があるのではないか?
結局はそうなのです。レンタルサーバー大手のGMO。どうやらサーバーの速度が遅いようです。サーバー自体の性能はしっかりしているはずなのに、なぜか遅いのです。あくまでも小耳にはさんだ噂ですが、サーバー側で通信速度を絞っているみたいなんです。
サーバーは200GBまで利用できます。
そのためかなり空き容量はあり、ひっ迫していません。
それでも遅いということは人為的に遅くしていると考えるしかありません。
時折サーバーエラーはあるものの、アクセスが集中しすぎてサバ落ちということにはならないのでしょう。表示に3秒以上かかるページは30%以上のユーザーが離脱すると言われております。当サイトのサーバー応答時間は2秒台。理想は1秒以下なのです。つまり3秒とか遅くはならないものの、1秒以下には絶対にならない。速度は速くないが、速度が極端に遅くなることも無い。
つまり、安定しているけれど遅いということなのでしょう。
とくにPHPとかを使っているワードプレスだと、如実にその部分がでているような感じがします。静的なサイトであればよいのかもしれませんが、当サイトはワードプレスなのでサーバー変更を考え直した方がよさそうですね。
ロリポップは同じGMOだから無しとして、エックスサーバーがいいかもって聞きましたがいかがなんでしょうか。SSLにも対応しているし、値段もお名前ドットコムよりも安いし、そっちの方がよさそうな気がしてきました。
近々サーバー引っ越しかな...。引っ越しって面倒なんですよね...。