Shared nginx configuration for multiple servers
Maxim Dounin
mdounin at mdounin.ru
Mon May 2 23:26:17 MSD 2011
Hello!
On Mon, May 02, 2011 at 03:04:48PM -0400, dbanks wrote:
> I'm facing a related issue, although my attempt at implementation is
> different from the OP.
>
> ip.conf:
> set $server_ip 10.11.1.50;
>
> nginx.conf:
> ...
> server {
> include ip.conf; #adds the $server_ip variable which is
> machine-specific
> listen $server_ip:80 default_server;
> ...
> }
>
> This fails with: nginx: [emerg] host not found in "$server_ip:80" of
> the "listen" directive in /opt/nginx/conf/nginx.conf:48
>
> What is the best way to include a hard-coded IP address from another
> file in order to allow nginx.conf to be universal across deployed
> machines?
Variable are evaluated at runtime during request processing, you
can't use them to configure listening sockets.
Either place full listen directive in included file or use some
external scripting to produce actual config.
Maxim Dounin
More information about the nginx
mailing list