У меня есть следующая сценария: у меня есть переменная env $SOME_IP
, и я хочу использовать ее в блоке nginx. Ссылаясь на nginx documentation я использую env
директиву в nginx.conf
файл как следующее:nginx: использовать переменные окружения
user www-data;
worker_processes 4;
pid /run/nginx.pid;
env SOME_IP;
Теперь я хочу использовать переменную для proxy_pass
. Я пробовал так:
location/{
proxy_pass http://$SOME_IP:8000;
}
Но я в конечном итоге с этим сообщением об ошибке: nginx: [emerg] unknown "some_ip" variable
Спасибо! Но нет ли возможности использовать переменные, определенные в 'nginx.conf' в серверных блоках? – schickling
В серверном блоке вы используете синтаксис 'set $ var 'value"; ', а затем ссылаетесь на $ var в вашей конфигурации. Но вы не можете использовать env vars. –
Сохранение людей в определенное время (для этого требуется специальная сборка), вы можете использовать шаблон, а инструмент под названием envsubst http://serverfault.com/a/755541/116508 сделал это для докера, и он работает, просто укажите env vars или вы можете случайно стереть vars в nginx, например, '' '$ host''' – Louis