Nginx-ru mailing list archive (nginx-ru@sysoev.ru)
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: проксирование в мир
Alex Vorona пишет:
> Привет
>
> Что можете сказать по безопасности конструкции
>
> location ^~ /remote {
> internal;
> x_accel_redirect off;
> rewrite /remote/([^/]+) $1/ break; # добавляем в конец /
> для /remote/domain.com
> rewrite /remote/(.+) $1 break;
> proxy_pass http://$uri?$args;
> }
>
> используемой в SSI
> <!--#include
> virtual="/remote/untrustedremotehost.com/sub/dir/file.php" -->
>
> error_page в /remote не заворачиваются
>
>
Вот такое получилось
location ^~ /remote {
internal; #ssi, error_page, rewrite, x-accel-redirect!
x_accel_redirect off;
proxy_buffers 4 32k;
proxy_max_temp_file_size 0;
proxy_pass_request_headers off;
proxy_pass_request_body off;
proxy_read_timeout 60;
proxy_send_timeout 60;
set $remhost "";
rewrite ^/remote/([^/]+)$ /remote/$1/ ; # добавляем в
конец / для /remote/domain.com
if ($uri ~* "^/remote/([^/]+)/") {
set $remhost $1;
}
rewrite /remote/(.+) $1 break;
proxy_set_header Host $remhost;
proxy_pass http://$uri$is_args$args;
#sub_filter_types text/css text/javascript
application/x-javascript;
sub_filter_once off;
#script|body|html|iframe|object|applet|meta|style|img|onmouse|onclick|onfocus|onload|onblur|frameset|frame
sub_filter iframe '';
}
Пофильтровать тэги не получилось, sub_filter только один раз можно указать.
|