Решил углубится в тему, вот результаты:
Директива open_file_cache применяется для кеширования информации о статических файлах: js, css, jpeg, html,..
Если файл не существует, или не прав на чтение, то эта информация также может хранится в кеше.
По умолчанию: open_file_cache off;
Пример с описанием:
# Информация о 1000 файлов, может хранится в кеше. Если не было активности к файлу в течение 5 мин, то информация о нем удаляется из кеша
open_file_cache max=1000 inactive=5m;
# Активностью считается обращение к файлу хотя бы 2 раза. В кеш они также попадают, если было хотя бы 2 обращения к файлу
open_file_cache_min_uses 2;
# Вся информация о файлах в кеше обновляться раз в 1 минуту
open_file_cache_valid 1m;
# Сохранять ли информацию об ошибках, например, если файла, к которому вы обратились - нет, то это будет тоже в кеше, информация тоже обновится через 1 мин
open_file_cache_errors on;
При работе со статическими файлами, когда они изменяются, например верстке.
На время работ желательно отключать open_file_cache, либо параметр open_file_cache_min_uses делать достаточно большим, чтобы файл не попадал в кеш, но это фактически тоже самое что и отключить open_file_cache.
Если файл находится в кеше, при этом происходит изменение файла, то сервер выдаст ошибку ERR_EMPTY_RESPONSE, что значит, что сервер отказал в доступе и не отдал контент.
При этом сам сервер работает нормально и если обратится к другим файлам, то они легко загружаются.
Примечателен факт, что если восстановить измененный файл, то сервер его начинает отдавать до проверки open_file_cache_valid. Видимо проверяется контрольная сумма файла, так как дата изменения файла меняется.
При работе с файловой системой NFS, рекомендуется не включать open_file_cache, так как информация о файлах может не обновляться даже после open_file_cache_valid.
Написал, а то может кому интересно будет или я забуду :)