Squid不必要地发布CSS文件

我有的设置Firefox已经与Web服务器谈判,Squid是一个caching代理。

Firefox < – > Squid(ssl_bump)< – > Web服务器

虽然图像(即使在https上)被caching,并且看到caching命中,但大部分CSS和JavaScript文件都被caching并获得发布:

1367165735.552 RELEASE -1 FFFFFFFF 0CF738871B9B86A15838CE1BE65BEE8E 200 1367165735 -1 1367265735 x-squid-internal/vary -1/0 GET https://9.123.122.180/common/js/dojo/1.6/dijit/form/Button.xd.js 1367165735.552 RELEASE 00 00000179 532661AE3C1B87904B52AC3FB1B9F971 200 1367165718 1333798649 -1 application/x-javascript 2495/2495 GET https://9.123.122.180/common/js/dojo/1.6/dijit/form/Button.xd.js 1367165735.552 SWAPOUT 00 00000192 128BF66F1EB8A67509CC774E3DFB50DC 200 1367165734 1333798649 -1 application/x-javascript 2495/2495 GET https://9.123.122.180/common/js/dojo/1.6/dijit/form/Button.xd.js 1367165737.268 RELEASE -1 FFFFFFFF 184B43B9627622DA2CC2415794961437 200 1367165737 -1 1367265737 x-squid-internal/vary -1/0 GET https://9.123.122.180/common/js/dojo/themes/tundra.css 1367165737.268 RELEASE 00 0000017D F5692CC660A0F4BA4FEDC211275BA0E4 200 1367165720 1366120055 -1 text/css 14723/14723 GET https://9.123.122.180/common/js/dojo/themes/tundra.css 1367165737.268 SWAPOUT 00 00000193 D1D0E32C07C74BF2D4F235EFEAC33DE1 200 1367165736 1366120055 -1 text/css 14723/14723 GET https://9.123.122.180/common/js/dojo/themes/tundra.css 

我试着玩configuration文件中的开关,但似乎没有任何工作。

 offline_mode on vary_ignore_expire on reply_header_access Last-Modified deny all request_header_access If-Modified-Since deny all request_header_access Cache-Control deny all 

有没有其他的标志/设置可以防止这些不必要的释放? 我如何进一步debugging?

我暂时做的是,我修改了squid的src目录中的HttpHeader.cc,对“Vary”头文件视而不见。

原始行:

  {"Vary", HDR_VARY, ftStr}, /* for now */ 

我的解决方法:

  {"Vary-junk", HDR_VARY, ftStr}, /* for now */ 

但是,是的,这是一个粗暴的黑客,除了临时testing以外,其他都不适合。 希望有一个更好的出路。