Использую функцию readfile() для отдачи файла, перед этим сформировав заголовки.
Все прекрасно работает, переполнения памяти нету.
Но есть небольшая проблема. Если файл большой, а нужно отдать таких 3-5 файлов, то приходится ждать загрузки первого.
Перейду к практике:
1. нужно отдать 2 файла, размер которых > 100 mb
2. перед пользователем 2 ссылки на скачку, он нажимает по первой, начинается закачка первого файла
3. он нажимает на вторую ссылку, и тут, самое интересное, закачка второго файла не начнется пока не будет до конца загружен первый файл.
В чем может быть проблема? если не в readfile() то подскажите в какой стороне копать?
Спасибо за внимание )
Сергей Протько: да не думаю. не работает как на хостинге так и на локальном сервере где апатч
но у друга, хром старой версии нормально качает несколько файлов за раз..
у меня и у других не качает
Может где-то стоит лимит на кол-во соединений? Или закачка первого файла полностью забивает канал?
Попробуйте выяснить отправляется ли запрос.
В браузере F12 → Network, и посмотреть начинается ли закачка.
Можно глянуть еще access.log вебсервера, в какой момент идет запрос. Или через wireshark посмотреть.
Вполне возможно что проблема с сессиями - PHP, при хранении сессии в файлах, подвешивает одновременные запросы кроме первого, пока первый не освободит сессию.