【发布时间】:2008-09-22 20:23:07
【问题描述】:
我有一个脚本,它接收一个加密的 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 字符,但没有任何 @987654322 @(并且 $filename 也没有任何 utf-8 字符)。
【问题讨论】:
-
“它在 IE 中有效”根本没有帮助。它怎么不工作?有错误信息吗?超时?它是否显示文件内容?它会下载错误的东西吗?
-
超时基本上,它会弹出一个下载窗口但永远不会前进,几分钟后它超时说:“Internet Explorer无法从WebServer下载文件名”
标签: php internet-explorer-7 download