3
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

SiteGuardを導入するとHTTP_ACCEPT_ENCODINGなどのHTTPヘッダが削除されてしまう件

Last updated at Posted at 2024-03-09

「SiteGuard」を導入にすると一部のHTTPヘッダーがとれなくなります。意外と気付かず条件設定などにおいてハマってしまうことがあります。

※ これは2016-09-28に個人ブログで公開した記事を移植し、CC0-1.0で提供しています。情報は古い可能性があります。

概要

さくらのレンタルサーバを使用しているサイトにおいてgzip圧縮データを返すようなPHPを作って動作確認していたのですが、いかなる環境で接続しても圧縮されたデータが返されませんでした。「$_SERVER['HTTP_ACCEPT_ENCODING'];」の値が常に空だったのです。

他のサーバーにあげたら利用できたのでさくらのレンタルサーバの環境が原因なのかと思っていました。他のサイトにあった記事ではさくらのレンタルサーバ固有の問題であるという書き方がなされていました。しかし、さくらのレンタルサーバで作っているテスト用ドメインでは動作したのです。

…あれ?

phpinfo();」を眺めていて気が付きました。両方のサーバーでHTTPヘッダーに違いがあったのです。

HTTPヘッダーの違い

「SiteGuard」を有効にしているサイトでは次のHTTPヘッダーが削除されていました。

HTTP_CONNECTION
HTTP_ACCEPT_ENCODING

一方で次のHTTPヘッダーが追加されていました。

HTTP_VIA = 1.0 ss212.guard.sakura.ne.jp:80 (JP-Secure/siteguard_http_01/520/ss212.guard.sakura.ne.jp)

まとめ

「SiteGuard」によって一部のHTTPヘッダーが削除されていることがわかりました。

3
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?