У меня следующая ситуация (упрощенно):
У меня есть скрипт file.php? File = foo.pdf, который доставляет файлы вне корня документа (у него нет html, это просто push-скрипт загрузки). Некоторые файлы защищены скриптом - в этом случае пользователь перенаправляется на login.php. При успешном входе в систему переменная сеанса устанавливается вместе с файлом, который пользователь хочет загрузить. Пользователь перенаправляется на home.php, где я создаю iframe с исходным файлом загрузки file.php? File = foo.pdf. Когда скрипт file.php начинает загружать файл, он сбрасывает переменную сеанса.
Это работает в Firefox, но в IE это предупреждает меня, и загрузка блокируется. Если я нажму на панель и разрешу загрузку, IE перезагрузит страницу. Но поскольку сеанс уже был сброшен, iframe не генерируется, и поэтому файл не загружается «снова».
IE, похоже, действительно запускает первую загрузку, но прерывает ее при получении заголовков. Так что, думаю, у меня нет шансов узнать, была ли загрузка прервана браузером.
У кого-нибудь есть решение этой проблемы? (Я не хочу кнопку загрузки).