NGINX, отключить кеш в определенной папке для файла определенного типа - PullRequest
0 голосов
/ 15 мая 2018

У меня есть - к сожалению, Windows - сервер Nginx, который я использую для статического контента (например, фотографии продуктов и т. Д.).В настоящее время у меня есть глобальные настройки для кэширования, но теперь мне нужно немного их изменить.

У меня есть папка, путь которой выглядит примерно так:

E:\xampp\srv\project-files\projectX\files\users\user-hash\visualisator\views

Как вы можете видеть впуть - это переменная user-hash , которая изменяется.И в этой папке у меня есть файлы * .jpg, для которых необходимо отключить кэш.

Я уже пробовал что-то подобное (расположенное поверх других (глобальных) настроек местоположения):

location ~ /users/ {
   alias "E:/xampp/srv/project-files/projectX/files/users";
   expires -1;
   add_header 'Cache-Control' 'no-store, no-cache, must-revalidate, proxy-revalidate, max-age=0';
 }

И я надеялся, что он по крайней мере отключит кэш для всех файлов в этой папке и далее.Но единственный результат, который я получаю от этого - http 403.

. Я могу жить с отключенным кешем из папки users и далее, если он будет работать, но лучшим решением будет отключить кеш длявесь путь (включая user-hash переменная) и только для определенного типа файла (* .jpg).

Есть идеи или рекомендации, как этого добиться?PS: NGinx для меня новинка, я потратил около 8 часов с этой технологией, извините, если это глупый вопрос, но я не могу ни разобраться, ни найти его.

Спасибозаранее!

1 Ответ

0 голосов
/ 15 мая 2018
location ~ .*files/projectX/files/users/.*jpg$ {
          expires -1;
          add_header 'Cache-Control' 'no-store, no-cache, must-revalidate, proxy-revalidate, max-age=0';
        }

Это делает трюк.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...