Opened 3 years ago

Closed 3 years ago

Last modified 23 months ago

#852 closed улучшение (готово)

Пользователи не видят обновления документов

Reported by: alx Owned by: artem
Priority: critical Component: Сайт adc-line.ru
Keywords: Cc:

Description

На нашем веб-сайте только что выложена новая редакция руководства по эксплуатации аппаратуры MC04-DSL-3U (http://adc-line.ru/pdf/mc04-dsl-3u-re.pdf), однако многие пользователи сайта его не увидят и об этом не узнают!

Проблема в том, что в ответе сервера на запросы браузера отсутствуют какие-либо директивы управления кешированием:

$ curl -I http://adc-line.ru/pdf/mc04-dsl-3u-re.pdf
HTTP/1.1 200 OK
Server: openresty/1.13.6.2
Date: Thu, 16 Sep 2021 05:15:41 GMT
Content-Type: application/pdf
Content-Length: 18957319
Connection: keep-alive
Last-Modified: Wed, 15 Sep 2021 09:31:56 GMT
ETag: "6141bd8c-1214407"
Accept-Ranges: bytes

Без таких указаний каждый браузер руководствуется своими внутренними настройками "по умолчанию", которые, как правило, предписывают кэшировать документ. Как результат, посетители сайта, уже открывавшие руководство ранее, продолжают видеть сохраненную в кэше браузера его старую редакцию. Аналогичная проблема существует, насколько я вижу, со всеми прочими документами сайта.

Для того чтобы посетители сайта видели актуальную информацию, предлагаю дополнить ответы сервера полем Cache-Control, предписывающим, как минимум, валидировать закешированный документ перед отображением, например Cache-Control: must-revalidate.

Change History (5)

comment:1 by san, 3 years ago

В "простых" настройках сервера, которые у нас включены я не вижу возможности установить must-revalidate, могу только время задать.
Сойдёт?
Какое время разумно поставить?

in reply to:  1 comment:2 by alx, 3 years ago

Replying to san:

В "простых" настройках сервера, которые у нас включены я не вижу возможности установить must-revalidate, могу только время задать.
Сойдёт?

Кому адресованы эти вопросы? Если мне, и если я правильно понял, что речь идет о времени max-age, то да, наверное, сойдет. Хотя странно, что max-age=xxx задать можно, а must-revalidate почему-то нет...

Какое время разумно поставить?

Думаю, значение 86400 является разумным.

comment:3 by san, 3 years ago

Думаю, значение 86400 является разумным.

Установил, готово.

Хотя странно

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

in reply to:  3 comment:4 by alx, 3 years ago

Resolution: готово
Status: newclosed

Replying to san:

Установил, готово.

Спасибо. По идее теперь посетители, хоть и с задержкой на сутки, но будут видеть обновления. Я думаю, этого достаточно чтобы тикет закрыть и не беспокоить более этой проблемой Артема. Когда-нибудь при случае проверим на практике.

comment:5 by san, 23 months ago

milestone: 1 очередь

Milestone deleted

Note: See TracTickets for help on using tickets.