Opera MobileでRefererを無効にし、Privoxy側で補完すれば少ない不具合で転送量を減らせる 特集その4

androidproxyWebサーバからファイルを取得するとき、リンク元のページのURLが「Referer」として送信される。長いURLのページに沢山の画像が含まれていたりすると、合計で何キロバイトものデータがRefererとして送信されることになる。Refererを送信することによるメリットはあまりないため、Opera Mobileの設定で「Enable Referer」を無効にしてRefererの送信を停止すれば、無駄な通信量を削減可能だ。

しかし、同一サイト内のURLをRefererとして送らないと画像などへのアクセスを拒否する設定になっているサイトでは、Referer送信を無効化していると画像が表示されないなどの不具合が生じてしまう。
これを回避するには、Privoxyの側で削除されたRefererを補えばいい。Privoxyでは、アクセス先サーバのトップページのURLなどをRefererとして送信することが可能なので、アクセス制限を回避できるぞ。

なお、サーバのトップページのURLをRefererにしても、一部のサイトではアクセスを拒否されてしまうことがある。このようなサイトも、個別にRefererの偽装ルールを追加すれば、ほとんどが正常に表示できるようになるぞ。

proxy_401OperaMobileで「opera:config#UserPrefs|EnableReferrer」というURLにアクセスし、チェックを外して設定を保存しよう。

proxy_402airproxyによる画像の縮小を抑止したい場合は、config-first.txtに迂回設定を記述しておこう。

proxy_403単にOpera MobileでReferer送信を無効にしてアクセスした場合、このように画像の表示ができないページがある。

proxy_404今回用意したPrivoxyの設定ファイルでは、Refererを補完するように設定済みだ。PrivoxyでRefererを補完してアクセスしたところ、正しく表示されたぞ。

proxy_405
ブログサービスなどで、Webページのサーバと画像のサーバが分かれており、Webページのサーバ上のURLをRefererにしないと画像が表示されない場合などは、個別の偽装ルールを定義しよう。「user.action」をメモ帳などで開き、末尾にある例を参考に、「{}」内にRefererにしたいページのURLを、その下の行に画像のあるサーバのアドレスを記述すればいいぞ。

関連記事

2011年09月17日11時38分 公開 | カテゴリー: ネット情報活用 | キーワード:, | Short URL
このエントリーをはてなブックマークに追加

最新記事