É possível especificar o root
caminho relativo ao arquivo conf que contém?
Estamos desenvolvendo um aplicativo Web e mantemos o app-nginx.conf
arquivo com configuração específica do aplicativo no diretório do projeto. Quero poder incluir esse arquivo no main nginx.conf
e ter o root
caminho referenciando adequadamente o subdiretório do projeto necessário. Exemplo:
# /etc/nginx/nginx.conf
http {
include /absolute/path/to/app/app-nginx.conf
}
# /absolute/path/to/app/app-nginx.conf
server {
server_name localhost;
listen 9090;
root ./app;
}
Depois de iniciar o nginx com uma configuração semelhante, o nginx tenta resolver o ./app
caminho relativo ao diretório de instalação do nginx ( /usr/local/Cellar/nginx/1.4.3/
no meu caso), não ao diretório do aplicativo.
--prefix
pode afetar outros servidores nginx e, da minha perspectiva pessoal, um pouco mais difícil de gerenciar em comparação com o arquivo de configuração. E o nginx não permite criar variáveis personalizadas comset
diretiva fora doserver
contexto; portanto, não posso mover o caminho absoluto do meu arquivo app-nginx.conf.include
essl_certificate
, por exemplo, mas usará o prefixo dir para opções comoroot
. Não pareço apresentar uma lista completa sobre qual delas cada opção usa.Não encontrei uma maneira de usar caminhos relativos ou definir variáveis globais, mas esse pequeno truque resolve meu problema.
fonte
map
diretiva comdefault
valor único que desempenhará o papel da variável para mim.