Кэширование на прокси-сервере NGINX - переменная уничтожителя кэша в querystring - возможный проигнорировать?

У меня был хороший опыт в прошлом с Сервером Trend Micro, Защищают.

Создает тихие системные службы на сервере и имеет инструменты управления бэкенда.

4
задан 19 September 2015 в 12:27
1 ответ

Мы нашли решение этого вопроса.

Правильный метод сделать это - создать ключ кеша с помощью nginx $ arg _... переменные. $ arg _... будет содержать параметры строки запроса. Итак, в приведенном выше примере мы должны использовать $ arg_parameter и $ arg_parameter2 в ключе кеша.

Результат в nginx.conf выглядит так:

http {
  ...
    server {
      location / {
         ...
         proxy_cache_key $scheme$proxy_host$uri$is_args$arg_parameter$arg_parameter2;
      }
    }
  ...
}

Обратите внимание, что параметр строки запроса, содержащий дефис (тире), например data - * параметры, не работает с синтаксисом $ arg_paramName . Обходной путь с использованием Lua можно найти в этой публикации .

5
ответ дан 3 December 2019 в 03:19

Теги

Похожие вопросы