recursive_error_pages limited to a chain of 11?

o456092@rtrtr.com nginx-forum at nginx.us
Tue Sep 25 15:30:41 UTC 2012


Hi Maxim,

   I have just tried - and it works - though more questions raise, how is
the round-robin working (though, since I am using cache, I am not too
concerned)  Also, is there a limit to the number of maximum upstream servers
within the block - from the documentation I don't see any indicative of
having limits - but this is something I wont have to worry for a long time.


nginx.conf

#user  nobody;
worker_processes  5;

#error_log  logs/error.log;
#error_log  logs/error.log  notice;
#error_log  logs/error.log  info;

pid        /var/run/nginx.origin.pid;


events {
    worker_connections  10000;
}

http {
    include       /etc/nginx.origin/mime.types;
    default_type  application/octet-stream;
    recursive_error_pages		on; 

	log_format main '-->$upstream_cache_status<-- | '
	'$remote_addr - $remote_user [$time_local]  "$request" '
	'| Upstream_Address "$upstream_addr" '
	'| upstream_response_time $upstream_response_time '
	'| msec $msec request_time $request_time '
	'| OriginServer $upstream_addr';
	
	log_format cache '***$time_local '
	'-->$upstream_cache_status<-- '
	'Cache-Control: $upstream_http_cache_control '
	'Expires: $upstream_http_expires '
	'"$request" ($status) '
	'"$http_user_agent" ';
	
	#access_log  logs/cache.log cache;
	
	access_log  /var/log/nginx/origin.nas.access.log  main;

   sendfile        on;
   keepalive_timeout  65;
		
	# Hide version information
   server_tokens off;
	
	#headers
	add_header Upstream-Host	$upstream_addr;
	add_header Cache-Status		$upstream_cache_status;
	
	#Include proxy config
	client_body_buffer_size  512k;
	proxy_connect_timeout    5;
	proxy_read_timeout       60;
	proxy_send_timeout       5;
	proxy_buffer_size        16k;
	proxy_buffers            4 64k;
	proxy_busy_buffers_size 128k;
	proxy_temp_file_write_size 128k;

	proxy_cache_path 
	/etc/nginx.origin/cache/maincache/cache	levels=1:2	keys_zone=nginx_cache:500m	inactive=30m
max_size=120g;
	proxy_temp_path		/etc/nginx.origin/cache/temp; 

	#proxy_cache_key "$host$request_uri$cookie_user";
	proxy_cache_key "$request_uri";

	proxy_cache_valid  200 302  60m;
	proxy_cache_valid  404      	0s; 
	
	upstream setA {
		server 192.168.30.9:10666;
		server 192.168.31.79:10666;
		server 192.168.72.109:10666;
		server 192.168.72.110:10666;
		server 192.168.72.201:10666;
		server 192.168.72.127:10666;
		server 192.168.72.128:10666;
		server 192.168.72.137:10666;
		server 192.168.31.238:10666;
		server 192.168.72.134:10666;
		server 192.168.72.139:10666;
		server 192.168.76.110:10666;
		server 192.168.72.141:10666;
		server 192.168.72.126:10666;
		server 192.168.76.103:10666;
		server 192.168.73.90:10666;
		server 192.168.73.91:10666;
		server 192.168.38.88:10666;
		server 192.168.38.89:10666;
	}
	
    server {
        listen       haproxy-local:10777;
        server_name  localhost;
        
        #This setting has to sit here in order to support
       	# more than
       	recursive_error_pages		on; 
		# UNCOMMENT BELOW TO ENABLE CACHE
		#proxy_cache nginx_cache;
		proxy_cache_valid  200 304 12h;
		expires      1d; 
		
		location /
		{
			access_log  /var/log/nginx/origin.handler.f.proxy_access.log  main;
			#If 404, check next server set. If last, it should go to error page.
			#error_page 404 502 503 504 /404.html;
			#error_page 404 /404.html;
			proxy_pass http://setA;
			proxy_set_header Host $host;
			proxy_set_header X-Real-IP $remote_addr;
			proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
			proxy_connect_timeout 60s;
			proxy_next_upstream error timeout http_500 http_502 http_503 http_504
http_404;
			proxy_intercept_errors on;
			
		}
		
		error_page   500 502 503 504  /50x.html;
		location = /50x.html {
			root   html;
		}
	  
		location = /404.html {
			root		html;
		}
		
		location = /crossdomain.xml {
			access_log  /var/log/nginx/origin.handler.crossdomain.proxy_access.log 
main;
			root		html;
		}
    }


}

Posted at Nginx Forum: http://forum.nginx.org/read.php?21,231038,231047#msg-231047



Подробная информация о списке рассылки nginx-ru