Nginx-ru mailing list archive (nginx-ru@sysoev.ru)
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: perl и header_out
On Sun, Dec 09, 2007 at 11:57:22PM +0200, deniswork@xxxxxxxxxxxxx wrote:
> > Нужно так:
>
> > $r->variable("limit_rate", "16k");
>
> > $r->header_out("Content-Disposition", "attachment;
> > filename=\"file.txt\"");
> > $r->send_http_header("application/octet-stream; charset=cp1251");
>
> > $r->internal_redirect("/dl/file.tx");
> > return OK;
>
>
> Сделал, спасибо!
>
> Но проблемма ниже(хедеры в теле файла) не решилась.
> location /dl {
> limit_conn one 2;
> root /home/denis/;
> internal;
> }
>
> sub dl {
> my $r = shift;
>
> $r->header_out("Content-Disposition", "attachment;
> filename=\"file.txt\"");
> $r->send_http_header("application/octet-stream; charset=cp1251");
> $r->internal_redirect("/dl/file.txt");
>
> return OK;
> }
Я ошибся. Перед internal_redirect вообще не нужно посылать заголовок, потому
что это сделает сам nginx. То есть, код такой:
$r->header_out("Content-Disposition", "attachment; filename=\"file.txt\"");
$r->internal_redirect("/dl/file.txt");
return OK;
Единственное, я не уверен, что "Content-Disposition" попадёт в ответ.
--
Игорь Сысоев
http://sysoev.ru
|