если позволяют ресурсы, включить atime, отключить open_file_cache и файлы, к
которым не было обращений > N дней, удалять из кэша например через find
и более старый файл переписывается новым.
а вот это уже сложнее будет похоже. Как вариант отдавать download-запрос на
fastcgi/http-бэкенд, который будет делать http HEAD запрос на win-сервер и
сверять mtime локального файла и Last-Modified и, в случае если на win-сервере
файл новее, удалять его из кэша nginx и делать на него X-Accel-Redirect,
попадающий в location /fetch/. Если же файлы одинаковые по времени модификации
либо другому нужному критерию, бэкенд выдаёт X-Accel-Redirect на location
images, который отдаёт файл из кэша. Либо бэкенд выдаёт всегда одинаковый XAR на
images, в котором срабатывает или не срабатывает редирект по 404-й ошибке на
fetch, в зависимости от того, удалил бэкенд файл с диска или нет.