Назад | Перейти на главную страницу

Squid без надобности освобождает файлы CSS

В моей настройке Firefox общается с веб-сервером, а Squid является кэширующим прокси.

Firefox <--> Squid (ssl_bump) <--> Веб-сервер

Хотя изображения (даже на https) кэшируются и видят попадания в кеш, большинство файлов CSS и JavaScript кэшируются и освобождаются:

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

Я попытался поиграть с переключателями в файле конфигурации, но ничего не работает.

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

Есть ли какой-нибудь другой флаг / параметр, который может предотвратить эти ненужные ВЫПУСКИ? Как мне отладить его дальше?

Что я временно закончил, так это то, что я изменил HttpHeader.cc в каталоге src squid, чтобы закрыть глаза на заголовок «Vary».

Исходная строка:

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

Мое решение:

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

Но да, это грубый взлом, который совершенно не подходит ни для чего, кроме временного тестирования. Надеюсь, есть выход получше.