У меня есть сервер, настроенный на прокси, указав:
proxy_cache_path /var/lib/nginx/cache levels=1:2 keys_zone=backcache:8m max_size=20g inactive=7d;
proxy_cache_key "$scheme$request_method$host$request_uri$is_args$args";
Несмотря на это, когда я запускаю nginx, я получаю Также / var / lib / nginx / proxy. ОБА начали заполняться, и, в конце концов, жесткий диск заполнился.
Если я попытаюсь указать вместо proxy_cache_path на / var / lib / nginx / proxy, я получу сообщение об ошибке:
nginx: [emerg] the same path name "/var/lib/nginx/proxy" used in /etc/nginx/conf.d/proxy.conf:1 and in /etc/nginx/nginx.conf:62
nginx: configuration file /etc/nginx/nginx.conf test failed
Строка 62 файла nginx.conf - это только конец раздела http {}, поэтому я предполагаю, что он жалуется на "значение по умолчанию", которое я пытаюсь изменить.
Я не могу понять, как отключить эта конфигурация прокси-сервера, похоже, дублирует явную конфигурацию, которую я установил. Есть ли способ переопределить / удалить эту конфигурацию прокси по умолчанию?
Оказывается, проблема заключалась в том, что / var / lib / nginx / proxy
- это proxy_temp_path
. Обычно nginx загружает по этому временному пути, а затем перемещает файлы в реальный каталог кеша после завершения загрузки.
У нас, должно быть, было много вещей, которые не завершили загрузку или никогда не переносили его в основной кеш, поэтому диск был заполнен.
Решением в этом случае было просто отключить использование temp_path (с помощью use_temp_path = off
] в директиве proxy_cache_path
в nginx 1.7.10 или выше).