gzip圧縮とは
gzip(ジー・ジップ)は、データ圧縮プログラムのひとつ、およびその圧縮データのフォーマットである。「GNU zip」の略でありGNUプロジェクトによって開発・メンテナンスされている。
概要はこんな感じ。要するにgzipを活用すればwebサイトのスピードが上がるということですね。
このサイトもスピードチェックをすると改善提案項目にgzipが出てきます。
前回は、次世代画像フォーマットwebPを活用して画像の読み込みスピードを上げることができました。
今回はこのサイトでgzip圧縮を試してみたいと思います。
.htaccessでgzip圧縮を有効にする
gzip圧縮を有効にするには**.htaccessの一番下に以下のコードを貼り付けます。(.htaccessのバックアップをとっておきましょう**)
ただし以下の方法は、mod_deflateが使えるレンタルサーバーの場合に限ります。
さくらインターネットでは一応使えるみたい。
圧縮させないファイルを記述
画像ファイルはすでに圧縮処理をしているの除外します。
圧縮させるファイルを記述
圧縮させるファイル形式を記述します。
gzip圧縮されているか確認する
.htaccessの設定が出来たので実際gzip圧縮されているか確認します。
chromeで右クリック→検証→Networkタブを選択してcommond+Rを押します。
試しにstyle.cssを選択してHeadersタブのResponse Headersを確認すると、content-encoding: gzipとなっています。
cssファイルのgzip圧縮が有効になっていますね。
jsファイルでも同じくgzip圧縮が確認できました。
次にgzip圧縮の除外対象にしていたimgファイルを同じ方法で確認します。
Response Headersを確認してもcontent-encoding: gzipはありません。
しっかり除外されていますね。
最後にページファイルもgzip圧縮されているか確認しますが、現状ではgzip圧縮されていません。
wordpressで作成したページなのでPHPでページ生成されているからです。
その為以下のコードをphp.iniに追加します。
さくらインターネットの場合はコントロールパネルからphp.iniを編集できます。
再度確認するとページファイルもgzip圧縮されていることが確認できました。
Lighthouseの項目もクリアになりました。
最後に
以上、今回は.htaccessとphp.iniの記述でgzip圧縮する方法を試してみました。
mod_deflateが使えるレンタルサーバーでしか今回の内容は試せませんが、gzip圧縮対応をすることでWebサイトの高速化を図ることができますので是非ご活用ください。