Re: include и конфиге в зависимости от IP клиент (geoip)
Maxim Dounin
mdounin at mdounin.ru
Tue Dec 23 14:37:53 UTC 2014
Hello!
On Tue, Dec 23, 2014 at 07:12:24AM -0500, siroco wrote:
> Привет,
>
> Есть необходимость включать или не включать кучу редиректов в зависимости
> от того, откуда приходит юзер.
>
> Переменную $myclient я могу выставить в какое-то значение в nginx.conf:
>
> geo $extclient {
> default external;
> 123.123.123.123/32 internal;
> }
>
> Но сделать conditional include не получается:
>
> if ($extlient = external) {
> include conf.d/extclient.redirects.include;
> }
>
> .. "nginx configtest" ругается.
>
>
> Как правильно решать подобную проблема?
Проще всего вынести само условие if(...) во внешний файл, и
включать этот файл.
Заодно это позволит лучше осознать, что никаких "conditional
include" в nginx'е не сущетсвует. А директива include выполняется
безусловно при чтении конфигурации и лишь говорит о том, что в
данном месте при загрузке конфигурации следует прочитать какой-то
другой файл.
--
Maxim Dounin
http://nginx.org/
Подробная информация о списке рассылки nginx-ru