apache2 - Почему кэширования статического файла не происходит?

Я продолжаю работать для кэширования статических файлов в среде SugarCRM, которой не происходит, как я хотел бы.

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

На браузере Chrome я пытаюсь получить доступ к этому URL непосредственно:

http://hostname/cache/include/javascript/sugar_grp1_jquery.js

Заголовки запроса, во время последующих посещений: Accept:text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8 Accept-Encoding:gzip, deflate, sdch Accept-Language:en-US,en;q=0.8,zh-CN;q=0.6,zh;q=0.4 Cache-Control:max-age=0 Connection:keep-alive Cookie:PHPSESSID=dlbb4vtum36n37teu9eqpd1pf7; sugar_user_theme=SuiteR Host:hostname If-Modified-Since:Thu, 09 Jul 2015 08:16:57 GMT If-None-Match:"6f344-51a6ce0fcb040-gzip" Upgrade-Insecure-Requests:1 User-Agent:Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/45.0.2454.101 Safari/537.36

Заголовки ответа похожи: HTTP/1.1 200 OK Date: Fri, 23 Oct 2015 15:20:58 GMT Server: Apache/2.4.16 (Ubuntu) Last-Modified: Thu, 09 Jul 2015 08:16:57 GMT ETag: "6f344-51a6ce0fcb040-gzip" Accept-Ranges: bytes Vary: Accept-Encoding Content-Encoding: gzip Keep-Alive: timeout=5, max=94 Connection: Keep-Alive Transfer-Encoding: chunked Content-Type: application/javascript

Я ожидал код состояния HTTP 304 (не измененный). Почему этого не происходит?

2
задан 23 October 2015 в 18:36
1 ответ

Похоже, это ошибка Apache. Как отмечено в Ссылка SO :

Это известная ошибка в Apache. См. Ошибка Apache №45023 и сводка Apache 304 etags и mod_deflate .

А временное решение, как указано в приведенной выше ссылке SO,

  • enable mod_headers
  • поместите их в .htaccess или apache config:

      RequestHeader edit "If-None-Match" "^ \" (. *) - gzip \ "$" "\" $ 1 \ ""
      Правка заголовка "ETag" "^ \" (. * [^ G] [^ z] [^ i] [^ p]) \ "$" "\" $ 1-gzip \ ""
     

2
ответ дан 3 December 2019 в 11:35

Теги

Похожие вопросы