ページの読み込み速度を上げる方法
ページの読み込み速度を上げれば、何か良いことがあるらしい。
ということで、ページの読み込み速度を上げる方法を調べて見た。
前にも書いたが、
★PageSpeed Insights
というサイトに自分のサイトのページのURLを打ち込むと、評価が出る。
80点以上がgoodなので、とりあえず80点以上を目指す。
もちろん100点を目指したいところだが、残念ながら広告やアド○ンスを貼っていると、80点を越えるのも結構難しい。
というのも、広告が呼び出してくる画像ファイルが大きいと、読み込み時間がかかってしまうからだ。
で、上のサイトに、検査するページのURLを打ち込むと、ページの最適化に関するアドバイスが出てくる。
サイトを最適化するための方法(例)
- ブラウザのキャッシュを活用する
- 画像を最適化する
- スクロールせずに見えるコンテンツのレンダリングをブロックしている JavaScript/CSS を排除する
- 圧縮を有効にする
このアドバイスは、影響が大きい順番に並ぶので、取りあえず上位2つか3つを対策すれば良い。
今売れてます!
ブラウザのキャッシュを活用する
まず最初に対応すべきなのが、ブラウザのキャッシュを活用するという項目だ。
この項目は、たいてい1番目か2番目に出ることが多い。
それだけ「やり甲斐がある」対策らしい。
では、ブラウザのキャッシュを活用するには、どうすれば良いのか。
「修正方法を表示」のリンクをクリックすると、こんな感じのアドバイスが出てくる。
この「有効期限が指定されていません」というファイルが、減点の対象らしい。
なので、有効期限を指定すればOKと言うことになる。
これは、「.htaccess」というファイルに、次の呪文を追加すると良いらしい。
<ifModule mod_expires.c>
ExpiresActive On
ExpiresDefault "access plus 1 seconds"
ExpiresByType text/css "access plus 15 days"
ExpiresByType image/gif "access plus 10 days"
ExpiresByType image/jpg "access plus 10 days"
ExpiresByType image/jpeg "access plus 10 days"
ExpiresByType image/png "access plus 10 days"
ExpiresByType application/x-javascript "access plus 10 days"
ExpiresByType text/x-javascript "access plus 1 month"
ExpiresByType application/javascript "access plus 1 month"
ExpiresByType application/x-javascript "access plus 1 month"
ExpiresByType text/js "access plus 1 month"
ExpiresByType text/javascript "access plus 1 month"
ExpiresByType application/x-shockwave-flash "access plus 1 month"
</ifModule>
10 days の部分は、 1 week に替えても構わないが、とにかく1週間以上であれば良いらしい。
今売れてます!
「.htaccess」ファイルがないときは、TeraPad(テラパッド)などのテキストエディタでこれを書き込み、適当なファイル名を付けて「utf-8N」形式で保存する(BOMコード無し)。
保存したらテキスト名を「.htaccess」に書き換えて、サーバーにアップロードする。
アップする位置は、ドメインの一番上に置けば、それ以下のページ全てに適用される。
複数のサイトを一つのドメインの下に作っているのであれば、一番上に置けば良いらしい。
次世代サイト作成ツールSIRIUS(シリウス)の場合は、「サイトオプション」のところで「.htaccess」を編集する部分があるので、そこで追加してアップする。
で、再びPageSpeed Insightsでチェックしてみると、こんな感じになった。
ブラウザのキャッシュを活用後の評価例
さっきの指摘の上位は、このサイト上にあるファイルが並んでいたが、適用後は外部のファイルの名前が並んでいる。
これらのファイルは、広告タグが呼び出しているファイル名なので、これ以上は対策しようがないね。
ということで、ブラウザのキャッシュを活用の対策は、これ以上どうしようもないので終わり。