Какая переменная содержит новый URI выданный с помощью X-Accel-Redirect...
$uri ?
Хочется вот чего - можно ли это записать по-nginx-и?
map $host $root {
default /var/www/default/;
server.ru /var/www/server.ru/;
*.server.ru /var/www/server.ru/;
}
location /internal/ {
if ($uri !~ /\/internal\/$host\//) {
return 403;
}
rewrite ^/internal/[^/]+/(.*)$ /$1 break;
root $root;
}
В X-Accel-Redirect можно вовзращать что-то типа /internal/host/path,
а потом делать что-то вроде этого:
map $int_host $root {
default /var/www/default/;
server.ru /var/www/server.ru/;
*.server.ru /var/www/server.ru/;
}
location /internal/ {
internal;
if ($uri ~ "^/internal/([^/]+)/" {
set $int_host $1;
rewrite ^/internal/[^/]+(/.*)$ $1 break;
root /$root;
}
return 404;
}
Игорь Сысоев
http://sysoev.ru