Re: X-Accel-Redirect и проксирование

Анатолий Шарифулин sharifulin at tochkak.ru
Wed Dec 17 12:03:14 MSK 2008


Вопрос снят, это я сам text/plain и content-length 0 ставил, поэтому nginx
ничего не менял :)

16 декабря 2008 г. 16:02 пользователь Анатолий Шарифулин <
sharifulin at tochkak.ru> написал:

> Привет!
>
> Есть контент вида image.jpg, video.mp4, разложенный по папочкам с ID:
>
> ID/
>    image.jpg
>    video.mp4
>    ...
> ID2/
>    image.jpg
>    video.mp4
>    ...
> ...
>
> Контент раздает nginx, нужно при скачке таких файлов отдавать "нормальные"
> названия.
>
> Сделал так:
>
>     location / {
>         if ($args ~* test) {
>             proxy_pass http://domain:9999;
>             break;
>         }
>
>         expires max;
>         root /path/data;
>     }
>
> На порту 9999 (на другом сервере) висит демона, который для каждой ID
> находит "нормальные" названия и отвечает на каждый запрос так:
>
> 200 OK
> Server: Title Server/1.0
> Content-Type:
> Content-Disposition: attachment; filename="normalnoe_nazvanie.mp4"
> X-Accel-Redirect: /data/1133/video.mp4
>
> Далее запрос обрабатывает nginx:
>
>     location /data/ {
>         internal;
>         expires max;
>         root /path;
>     }
>
> В результате пользователь получает следующий ответ:
>
> 200 OK
> Server: nginx/0.6.16
> Date: Tue, 16 Dec 2008 12:44:24 GMT
> Content-Type: text/plain; charset=utf-8
> Last-Modified; Fri, 12 Dec 2008 10:02:45 GMT
> Transfer-Encoding: chunked
> Content-Disposition: attachment; filename="normalnoe_nazvanie.mp4"
> Content-Encoding: gzip
> Connection: Close
>
> Т.е. ставится дефолтный Content-Type, а должен от отдающего файла, и нет
> Content-Length.
> Как разрешить эту проблему?
>
> Сначала была идея написать на nginx-perl, но у меня демон общается с БД не
> блокируясь. Поэтому решил написать свой демон.
>
> --
> С уважением,
> Анатолий Шарифулин.
>



-- 
С уважением,
Анатолий Шарифулин.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://nginx.org/pipermail/nginx-ru/attachments/20081217/519755c6/attachment.html>


More information about the nginx-ru mailing list