Você pode obter uma variável aleatória do módulo misc:
set_random $loc_rnd 1 10;
Em seguida, escolha a localização interna com base nela, com ponderação simples:
map $loc_rnd $loc_redirect {
1 @server1;
2 @server1;
...
8 @server2;
9 @server2;
10 @server2;
}
location / {
recursive_error_pages on;
error_page 403 = $loc_redirect;
return 403;
}
Redirecionamentos:
location @server1 {
internal;
return 302 http://box11.example.com$request_uri;
}
location @server2 {
internal;
return 302 http://box11.example.com$request_uri;
}
Outra variante: use retornar 302 $ alguma_variavel; (e URLs completos no mapa) diretamente no local "/".