>> имеется порядка 5 однотипных серверов. у которых конфиг nginx >> отличается только >> 1. путями к корню проекта >> 2. хост-именами серверов >> >> иногда встает задача "добавить роут с правилом". приходится это делать >> для всех серверов. >> >> хотелось бы как-то упростить. >> >> например вынести общую часть в отдельный файл и как-то поместив >> переменные части в переменные. >> >> но вопрос в том что nginx (вроде бы) не поддерживает использование >> пользовательских переменных в конфиг-файле. >> >> какой бы велосипед применить в данном случае?
> А пример конфига с выделенными постоянными и переменными частями можно?
ну например такой (в реале конфиг из 23 локейшенов)
server_name abc.ru;
location / {
root /path/to/project/public;
}
location /trs/ {
rewrite ^(/trs)(/.*)$ $2 break;
proxy_pass http://backend1;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For
$proxy_add_x_forwarded_for;
auth_basic "abc auth";
auth_basic_user_file /path/to/project/config/htpasswd/rpc.htpasswd;
}
и еще десяток роутов, в которых упоминается:
- /path/to/project/
- abc.ru
- hostname
вот если бы эти части сплавить в какие-то переменные, то можно было бы
инклюд сделать
> Я примерно похожее реализовывал через include.
--
. ''`. Dmitry E. Oboukhov
: :’ : email: [email protected] jabber://[email protected]
`. `~’ GPGKey: 1024D / F8E26537 2006-11-21
`- 1B23 D4F8 8EC0 D902 0555 E438 AB8C 00CF F8E2 6537
signature.asc
Description: Digital signature

