プロキシサーバ Squid は、WEBキャッシュサーバとしても動作します。
色んなページを見てもそう書いていますが、パソコン鳥が Squidのログを見ても、キャッシュにHITしていませんでした。
ログは CentOS ならば、/var/log/squid/access.log を見ます。
TCP_HIT やTCP_MEM_HIT の文字があれば、キャッシュにHITしたことを示します。
しかし、あるのは TCP_MISS の文字ばかり。
TCP_MISS はコンテンツがキャッシュに無かったことを示します。
ブラウザで同じWEBページを何度見ても、TCP_MISS ばかり・・・おかしい・・・
原因は、簡単なものでした。
先にブラウザのキャッシュにHITしていただけ! でした。
ブラウザでキャッシュHITしていたから、SquidにはブラウザでもHITしなかった動的コンテンツ等の要求しか来ず、結果、キャッシュミスになったのです。
試しに、ブラウザのキャッシュサイズを 0 にすると、ログに TCP_MEM_HIT が出ます。
メモリ上のキャッシュにHITしたことを示します。
他の方も TCP_MISS ばかりで悩まれていますが、おそらく、上の通り、先にブラウザのキャッシュが効いていたためと思われます。
Squidはブラウザによって動きが違う? | 住宅購入と新米パパと、時々、IT – 楽天ブログ
squid3 only reports TCP_MISS, never TCP_HIT
ということで、Squid の キャッシュ機能は、
- ブラウザ以外のキャッシュ機能を持たないアプリからのWEBアクセス
- 1台で異なるブラウザでのアクセス
- 複数台のPCからのアクセス
で有効です。
動作確認も、上記でしないと、キャッシュにHITしないな~と迷う羽目になります。
コメント