set $redirect http://127.0.0.1:8080$request_uri;
if ($host = "xp.2315.ru") {
set $redirect http://127.0.0.1:7070$request_uri;
}
location / {
proxy_pass $redirect;
}
полезно это тем, что например однажды настроеный фронтенд сервер по такой схеме, может отлавливать и рулить трафик на несколько бекенд серверов. поверьте иногда бывает нужно :)
таким макаом я разрулил Track,web svn, xplanner на один фронтенд сервер.
server {
listen 443;
keepalive_timeout 70;
access_log /sites/ssl.2315.ru/logs/nginx.access_log;
error_log /sites/ssl.2315.ru/logs/nginx.error_log;
ssl on;
ssl_protocols SSLv3 TLSv1;
ssl_ciphers AES128-SHA:AES256-SHA:RC4-SHA:DES-CBC3-SHA:RC4-MD5;
ssl_certificate /ssl/any.2315.ru.crt;
ssl_certificate_key /ssl/any.2315.ru.key;
ssl_session_cache shared:SSL:10m;
ssl_session_timeout 10m;
proxy_redirect off;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
client_max_body_size 10m;
client_body_buffer_size 128k;
proxy_connect_timeout 90;
proxy_send_timeout 90;
proxy_read_timeout 90;
proxy_buffer_size 4k;
proxy_buffers 4 32k;
proxy_store off;
set $redirect http://127.0.0.1:8080$request_uri;
if ($host = "xp.2315.ru") {
set $redirect http://127.0.0.1:7070$request_uri;
}
location / {
proxy_pass $redirect;
}
}
это для полной кратины :)