Today Jun 28, 2010 at 13:17 Антон Редозубов wrote:
> Внутри php обрабатываю свои проверки, а потом обрабатываю заголовок
> Range. И на основе всего этого выдаю заголовки nginx.
> В итоге, через браузер качается, через curl качается. А через wget - нет.
> А вот выдача wget -d
> ---request begin---
> GET /d/very_long_string HTTP/1.0
> User-Agent: Wget/1.11.4
> Accept: */*
> Host: dl02.redic
> Connection: Keep-Alive
> ---response begin---
> HTTP/1.1 200 OK
> Server: nginx
> Date: Mon, 28 Jun 2010 08:19:30 GMT
> Content-Type: text/html
> Connection: close
> X-Powered-By: PHP/5.3.1
> Но если wget'ом докачать (-c) статический файл, то все работает.
> ---request begin---
> GET /1.mpg HTTP/1.0
> Range: bytes=6591408-
> User-Agent: Wget/1.11.4
> Accept: */*
> Host: dl02.redic
> Connection: Keep-Alive
> В чем может быть проблема?
Если я правильно понял вопрос, то Вас смущает ответ text/html и отсутствие X-Accel-Redirect в этом случае.
Без -c wget не посылал в запросе Range - посмотрите как ведёт себя php-код в этом случае.
Скорее всего в ответ попадает часть тела(пробел, пустая строка, выдача ошибки при display_errors=On) до header().
Устраните это и всё должно работать, а ob_start() и ob_flush() помогут обойти случайную выдачу тела до заголовков в будущем.
--
WNGS-RIPE
_______________________________________________
nginx-ru mailing list
nginx-ru@nginx.org
http://nginx.org/mailman/listinfo/nginx-ru