Re: Патч ETags в NixOS
izorkin на gmail.com
izorkin на gmail.com
Вт Ноя 21 18:53:16 UTC 2023
Здравствуйте, Maxim.
Да, этот патч, забыл указать ссылку.
Проверил без патча и добавлением строки `add_header Last-Modified "";`
В ответе генерируется ETag: "1-4e", "1-75" и т.д. Если после изменения
содержимого файла без изменения размера, то при запросе отдаётся файл
из кеша, т.к. при этом ETag не изменяется. А если размер файла меняется,
кеш обновляется.
Вариант с использованием хеадера Last-Modified не подходит, может надо
как-то учитывать путь к файлу для генерации ETag.
Вы писали 20 ноября 2023 г., 5:57:08:
> Hello!
> On Sun, Nov 19, 2023 at 04:15:42PM +0300, izorkin на gmail.com wrote:
> Если я правильно понимаю, речь про вот этот патч:
> https://github.com/NixOS/nixpkgs/blob/nixos-23.05/pkgs/servers/http/nginx/nix-etag-1.15.4.patch
> Патч выглядит, скажем так, непригодным для включения куда-либо.
> Если для задачи достаточно не выдавать пользователю Last-Modified,
> а выдавать только ETag (этого, вероятно, будет достаточно как
> минимум если в URI виден полный путь из /nix/store, включающий
> hash, а также в остальных случаях, если на размер можно полагаться для
> идентификации файлов), то просто убрать Last-Modified из ответов
> можно стандартным механизмом add_header
> (http://nginx.org/r/add_header):
> add_header Last-Modified "";
> Соответственно у ответов будет только ETag, сформированный
> nginx'ом из даты модификации файла (0 в случае /nix/store) и
> размера файла.
--
С уважением,
Izorkin mailto:izorkin на gmail.com
Подробная информация о списке рассылки nginx-ru