squidのhierarchy_stoplist
squidのconfに書かれている
hierarchy_stoplist cgi-bin ?
の一行ですが、Webでこの語句を検索すると、ここに書かれている文字を含むURLはキャッシュしないとだけ書かれているサイトもあり、
キャッシュしない時はここに書けばいいのか、と私も単純に思ってしまったのですが、
どうやら、外部のURLフィルタリングサービスやウィルスチェックサービスと連携する時はここの記述が非常にまずいことになるようです。
hierarchy_stoplistは
このリストに記述されたワードがURLの中に見つかると、隣接キャッシュではなく直接サーバにリクエストを行います。隣接キャッシュを使いたくないオブジェクトのために使ってください。
このオプションは複数回指定できます。デフォルトは、’cgi-bin’と’?’を含むURLの場合に直接オブジェクトを持ってきます。
ということなので、cache_peerで外部のサービスを親プロキシとして指定している場合に、親プロキシがキャッシュしているかどうかに関わらず、
hierarchy_stoplistに書かれている文字があると「親プロキシを経由しない、つまりURLフィルタリングやウィルスチェックを通らない」ということになってしまうようです。
これは危険。
キャッシュの制御というのはなかなか難しく、ちょくちょくキャッシュを見ているためと思われる不具合が起こります。動的ページが増えている今は、以前のようにシンプルなキャッシュというのは出来なくなっているのかもしれません。プロキシはアクセス制御としての役割の方が大きくなっているようです。
三省堂書店でしか買えない書籍[送料無料]三省堂書店オンデマンド テクノプレス 「squid2プロ… |
SUZUKI スズキ 鍵盤ハーモニカ メロディオン 卓奏唄口セット ストレートタイプ 白色 MP-113
¥335 (2024年5月20日 16:07 GMT +09:00 時点 - 詳細はこちら価格および発送可能時期は表示された日付/時刻の時点のものであり、変更される場合があります。本商品の購入においては、購入の時点で当該の Amazon サイトに表示されている価格および発送可能時期の情報が適用されます。)