Re: [bug?] при указании proxy cache path с использованием дефолтного пути nginx ругается при проверке конфига

Maxim Dounin mdounin на mdounin.ru
Вс Июл 31 23:47:38 UTC 2016


Hello!

On Mon, Aug 01, 2016 at 04:00:07AM +0700, Vadim A. Misbakh-Soloviov wrote:

> В письме от воскресенье, 31 июля 2016 г. 7:53:20 +07 пользователь Vasiliy P. 
> Melnik написал:
> > конфиги надо смотреть - больше похоже на опечатку какую-то или символ влетел
> > лишний
> 
> Вот, максимально упростил конфиг. Вырезал практически всё. Тем не менее.
> 
> 
> $   sudo nginx -t; echo "========="; cat -n /etc/nginx/nginx.conf
> nginx: [emerg] the same path name "/var/lib/nginx/tmp/proxy" used in /etc/
> nginx/nginx.conf:4 and in /etc/nginx/nginx.conf:9
> nginx: configuration file /etc/nginx/nginx.conf test failed
> =========
>      1  user nginx nginx;
>      2  worker_processes 1;
>      3  http {
>      4          proxy_cache_path /var/lib/nginx/tmp/proxy levels=1:2 
> keys_zone=proxy_cache:128m;
>      5          server {
>      6                  listen [::1];
>      7                  server_name _default_;
>      8          }
>      9  }

Судя по

   --http-proxy-temp-path=/var/lib/nginx/tmp/proxy

в параметрах сборки, вы пытаетесь указать в качестве 
proxy_cache_path тот же путь, что используется в proxy_temp_path.  
От подобного смешения путей ничего хорошего не произойдёт, а 
наоборот, с близкой к 100% вероятностью произойдёт плохое.  И 
именно это nginx и пытается сказать, уж как умеет.

Что касается номера строки, указывающего на закрывающую скобку, то 
тут всё просто.  Поскольку proxy_temp_path задан по умолчанию, и 
явно в конфиге не присутствует - то он добавляется после окончания 
парсинга блока http{}.  Текущая строка конфига в этот момент - 
указывает на закрывающую скобку блока, и именно её и печатает код, 
выдающий сообщение об ошибке.

И, чтобы два раза не вставать: в отсутствии блоков server{} 
proxy_temp_path не добавляется и конфликта не возникает.

-- 
Maxim Dounin
http://nginx.org/



Подробная информация о списке рассылки nginx-ru