[bug?] при указании proxy_cache_path с использованием дефолтного пути nginx ругается при проверке конфига
Vadim A. Misbakh-Soloviov
nginx на mva.name
Вс Июл 31 07:51:27 UTC 2016
Всем привет!
Хотелось бы спросить у разработчиков, нашёл ли я баг, или это поведение Just
as planned.
Итак, дано:
1) Кусок конфига, который участвует в драме:
```
110 proxy_cache_path /var/lib/nginx/tmp/proxy levels=1:2
keys_zone=proxy_cache:128m;
111 }
```
Номера строк указаны для понимания на что ругается проверка синтаксиса.
2) Если блоков `server{}` внутри `http{}` конфиге нету, то проверка синтаксиса
конфига проходит нормально не смотря на ровно тот же контент строки конфига с
`proxy_cache_path`.
Если же блоки server есть, то наблюдается вот что:
```
$ nginx -t
nginx: [emerg] the same path name "/var/lib/nginx/tmp/proxy" used in /etc/
nginx/frontends.d/http:110 and in /etc/nginx/frontends.d/http:111
nginx: configuration file /etc/nginx/nginx.conf test failed
```
3) При этом, не важно, где находится `proxy_cache_path`: до инклуда вхостов с
`server{}` или после. В качстве второго места с дублированием пути синтакс-
чекер всегда указывает строку, закрывающую блок `http{}`.
4) если в `proxy_cache_path` указать путь со слешем на конце - всё становится
нормально. Но, например, в документации он без слеша.
В общем, хотелось бы спросить, баг ли это и как быть :)
Подробная информация о списке рассылки nginx-ru