Intereting Posts
Заголовок PHP не перенаправляется Аутентификация (претензии) к Sharepoint / Office356 через PHP и SOAP Force загрузить файл с PHP, дающим пустой файл ZF + Doctrine 2: Тяжелые классы моделей или Легкая модель + Сервисный уровень? изменение прав доступа на PHP в XAMPP на Windows 7 PHP Как преобразовать массив в csv с помощью функции fputcsv Разделить слово camelCase на слова с php preg_match (регулярное выражение) Недопустимое разрешение команды php exec () Процесс FastCGI превысил настроенный тайм-аут активности Настройте _Session для работы с приложениями, развернутыми на нескольких серверах, разными субдоменами Статистика обнаружения JavaScript / браузера PHP – Как получить все значения массива из n глубокого массивного массива? Как сохранить данные с помощью сеансовой службы Symfony2 во время функционального теста? Перевод текста в речь на PHP с помощью Google Translate Как выполнить метод в классе из командной строки

PHP readfile возвращает файл с нулевой длиной

Это странно .

У меня есть скрипт, который отправляет локальные zip-файлы пользователю через браузер. Скрипт отлично работал до сих пор без каких-либо проблем. Сегодня мой коллега сообщил мне, что сценарий отправляет файлы нулевой длины.

Некоторая справочная информация:

  • Настройки сервера не были изменены до того, как скрипт поступил неправильно
  • Различные браузеры протестированы (то же самое в Chrome / Firefox)
  • Предыдущие zip-файлы (которые отлично работали раньше) также имеют нулевую длину
  • Скрипт находит файлы на сервере
  • Правильный размер файла (при повторном эхоподавлении для отладки)
  • Пытался настроить настройки сервера и сценарий, как это рекомендовано здесь, без успеха.

ОБНОВЛЕНИЕ:

  • is_readable() возвращает 1
  • размер файлов может варьироваться от 5 МБ до 100 МБ (не определен)
  • $zip_file содержит путь к файлу
  • $zip_name содержит имя zip
  • файл действительно нулевой длины (открыт в текстовом редакторе, он не содержит одного байта)
  • error_reporting E_ALL ( E_ALL ) ничего не показывает
  • без заголовков браузер правильно отображает «источник» zip
  • Safari говорит: « 0 байт? не может декодировать исходные данные «первый полезный (?) симптом

Рассматриваемый фрагмент:

 if (file_exists($zip_file)) { header('Content-type: application/zip'); header('Content-disposition: filename="' . $zip_name . '"'); header("Content-length: " . filesize($zip_file)); readfile($zip_file); exit(); } 

Как я могу легко отладить это?

Заранее спасибо, fabrik