Я пытаюсь заставить Tomcat установить заголовок Expires с фильтром expires, чтобы браузеры чаще проверяли перезагрузку определенного файла. Я обнаружил, что могу получить правильный заголовок Expires, но Tomcat устанавливает неправильную дату последнего изменения. По сути, это установка даты на время, когда Tomcat начал минус 1 месяц.
Когда браузер проверяет, должен ли он перезагрузить файл, он отправляет эту дату обратно в If-Modified-Since, а затем Tomcat, по-видимому, пересчитывает такую же дату и отвечает Нет, нет, Нет, нет. не изменилось! Ты в порядке! Даже если файл имеет , который был недавно изменен.
Это чепуха. Из strace я вижу, что Tomcat запускает stat () для файла, но, похоже, игнорирует в нем метки даты.
Итак: Вопрос: Как Tomcat рассчитывает время последнего изменения файла ?? Как я могу повлиять на Tomcat, чтобы использовать фактическое время модификации в файловой системе вместо собственного глупого времени перезапуска Tomcat?
Tomcat 9.0.8.0 в Linux, раздающий файл приложения / javascript.