ПРОЕКТЫ 


  АРХИВ 


Apache-Talk @lexa.ru 

Inet-Admins @info.east.ru 

Filmscanners @halftone.co.uk 

Security-alerts @yandex-team.ru 

nginx-ru @sysoev.ru 

  СТАТЬИ 


  ПЕРСОНАЛЬНОЕ 


  ПРОГРАММЫ 



ПИШИТЕ
ПИСЬМА














     АРХИВ :: Apache-Talk
Apache-Talk mailing list archive (apache-talk@lists.lexa.ru)

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [apache-talk] Значение Content-Length




On Fri, 22 Apr 2005, Igor Sysoev wrote:

On Fri, 22 Apr 2005, Alex Tutubalin wrote:

On Fri, Apr 22, 2005 at 05:57:21AM +0300, Konstantin N. Bezruchenko wrote:

Скажите, а почему значение Content-Length может быть отрицательным?
Возможно апач не уммет работать с файлами >2G?
Потому как размер файла 2226010112 байт и проблемы только с ним.

В вопросе уже содержится ответ. Не иначе там signed int в этом месте.
В каком, кстати, это core apache или какой-то модуль для раздачи
специальный ?

Да, это core:

src/include/httpd.h:

struct request_rec {
   ...
   long clength;               /* The "real" content length */


У nginx'а, кстати, принимаемый Content-Length - ssize_t и тоже не будет
принимать больше 2G на 32-битных платформах.

А что, уже назрела необходимость POST'ить такие файлы ?

Похоже, что Апач 1.3 не поддерживает корректно на 32-битных платформах
отдаваемые файлы больше 2G: функция, выставляющая "Content-Length",
принимает long, а не off_t:

API_EXPORT(int) ap_set_content_length(request_rec *r, long clength)



Игорь Сысоев
http://sysoev.ru



 




Copyright © Lexa Software, 1996-2009.