У меня есть скрипт, который получает зашифрованный URL-адрес и из которого генерирует загрузку, наиболее критичным является следующий сценарий:
$MimeType = new MimeType();
$mimetype = $MimeType->getType($filename);
$basename = basename($filename);
header("Content-type: $mimetype");
header("Content-Disposition: attachment; filename=\"$basename\"");
header('Content-Length: '. filesize($filename));
if ( @readfile($filename)===false ) {
header("HTTP/1.0 500 Internal Server Error");
loadErrorPage('500');
}
Загрузки работают как прелесть в любом браузере, кроме IE, я видел проблемы, связанные с заголовками «без кэширования», но я не отправляю ничего подобного, они говорят о символах utf-8, но их нет utf-8 characters
(и $ filename также не имеет ни символов utf-8).