proxy_redirect can't be def'd in an include file; ok in main config?

rand at sent.com rand at sent.com
Tue Jan 21 18:55:58 UTC 2014


i've nginx 1.5.8

If I check a config containing

	cat sites/test.conf
		...
		location / {
			proxy_pass  http://VARNISH;
			include  includes/varnish.conf;
		}
		...
	cat includes/varnish.conf
		proxy_redirect  default;
		proxy_connect_timeout  600s;
		proxy_read_timeout     600s;
		...

I get an error

	nginx: [emerg] "proxy_redirect default" should be placed after
	the "proxy_pass" directive in
	//etc/nginx/includes/varnish.conf:1
	nginx: configuration file //etc/nginx/nginx.conf test failed

but if I change to,

	cat sites/test.conf
		...
		location / {
			proxy_pass  http://VARNISH;
+                       proxy_redirect  default;
			include  includes/varnish.conf;
		}
		...
	cat includes/varnish.conf
-               proxy_redirect  default;
+               #proxy_redirect  default;
		proxy_connect_timeout  600s;
		proxy_read_timeout     600s;
		...

then config check returns

	nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
	nginx: configuration file /etc/nginx/nginx.conf test is
	successful

Why isn't the proxy_redirect viable in the include file?  Intended, or a
bug?



More information about the nginx-devel mailing list