Приветствую
Столкнулся с одной проблемой.
Есть скрипт, который генерирует некий отчет в формате CSV (но это не суть), а затем дает пользователю на скачку. А если быть точнее, то скрипт сразу начинает скидывать данные на вывод ещё во время чтения из БД, без сохранения в памяти, так как отчет может занимать много мегабайт.
Заголовки которые устанавливаются в начале скрипта:
Content-type: text/csv; charset=utf8; header=present<br>
Content-disposition: attachment; filename=report.csv<br>
Заранее скажу, что особенность скрипта не позволяет заранее вычислить полный объем конечных данных и поэтому заголовок
Content-Length не установлен.
Примерная структура скрипта:
$res = $db->query($sql);<br>
while ($data = $res->fetchRow())<br>
echo $data;<br>
Сначала всё работало отлично во всех браузерах, но недавно я перенес этот скрипт на защищенную страницу (HTTPS), после чего он перестал работать в браузерах IE8 и ниже для больших отчетов (скачивание которых занимает несколько минут). Т.е. во всех браузерах, даже в IE9+, скрипт сразу начинал скачивать отчет, но в IE8- он чегото долго ждет (предположительно он ожидает получить весь файл сразу, а потом выдать диалог сохранения), а потом гдето через минуту раздумья выдает, что соединение прервано. Напоминаю, что при обычном HTTP такой проблемы небыло.
Никто не сталкивался с чем-то подобным?
Как это вылечить?
P.S. Данный симптом наблюдается как в обычном режиме, так и в режиме совместимости.
P.P.S Cтойкость шифра 256 bit