• 公開日: 2024-06-02
  • 最終更新日:

さくらのレンタルサーバーではWAFが有効だとGZIP圧縮を利用できない!?

さくらのレンタルサーバーではWAFが有効だとGZIP圧縮を利用できない!?

はじめに

本記事では、さくらのレンタルサーバーでWAFが有効だと、
GZIP圧縮(mod_deflate)を利用できない理由と、WAFを利用したまま、
GZIP圧縮にする代替案を説明しております。

なぜWAFが有効だと、GZIP圧縮を利用できないのか

さくらのレンタルサーバーではWAFの製品に「SiteGuard」が導入されています。
しかし、このSiteGuard、WAFを有効にすると、一部のHTTPヘッダが削除されます。
その中のGZIP圧縮関連(mod_deflate)系のHTTPヘッダも削除される対象です。
なので、WAFが有効だと、利用できないわけです。

参考
https://qiita.com/bicstone/items/3d88fb943d7f08eb3335

どうしたらGZIP圧縮を利用できるようになるの?

答えは簡単、WAFを無効にすればいいだけです。 (参考: https://help.sakura.ad.jp/rs/2233/)

そんなの現実的じゃないですよね。
なので代替案を紹介させてもらいます。

代替案: CDNを使う

ほとんどのCDNには、GZIP圧縮(もしくはBrotli)の設定があると思うのでそれを有効にしてください。
そうすると、GZIP圧縮(もしくはBrotli)が有効になると思います。
CloudflareのようなCDNを使えば、リバースプロキシ(CDN)にアクセスすることになるので、
オリジンサーバーの成約は関係なくなります。
実際この下記の画像のオリジンサーバーはさくらのレンタルサーバーですが、CDNを経由していることで、
問題なくGZIP圧縮(mod_deflate)で配信できることが確認できます。

なお注意として、さくらのクラウドの、さくらのウェブアクセラレータは、
オリジンサーバー側でGZIP圧縮するタイプのCDNなので、CDN単体には、GZIP圧縮をする機能がありません。
(その代わり、GZIPやBrotliもしくは両方に正規化する機能はある。)
なのでそこには注意してください。

まとめ

WAFを有効にすると、一部のHTTPヘッダが削除されて、GZIP圧縮(mod_deflate)
が利用できなくなりますが、WAFを解除することによって利用できるようになります。
ですが、現実的ではないですよね。
なのでその代替案として、CDNを使ってGZIP圧縮で配信するということができます。

なお、さくらのウェブアクセラレータは、CDN単体でGZIP圧縮する機能がないということに
注意してください。

よかったらグッドボタン&シェアお願いします!

記事の削除依頼や修正依頼については、問い合わせにて受け付けております。
ぜひお気軽に問い合わせください。

筆者のプロフィール

profile-img

名前: Otusoaオツソア (本名: 小林 栄太)

主に1年間ぐらい趣味でWebサイトを作っています。
当サイトでは、自分の好きなようなことを発信していきます。

Contact