gpt4 book ai didi

php - 通过 SSL 下载损坏的 IE8 文件

转载 作者:太空宇宙 更新时间:2023-11-03 13:45:42 25 4
gpt4 key购买 nike

我编写并维护了一个网站,两周前的 3 月 11 日星期一......就在两次 IE 更新和夏令时生效之后。此代码已损坏,但仅适用于运行 IE8 的 Windows XP 机器,并且仅使用 SSL 加密。问题是我需要安全地传输这个文件。此代码同样适用于 XP 机器上的 firefox,或 Windows 7 上的 IE 9

文件根据请求创建并立即删除

问题不是间歇性的......它一直失败......并且很快(基本上立即......所以没有超时问题或其他问题)

这是错误:http://i.imgur.com/j0cOJ0L.png

这是当前的 PHP 文件:

//////////////////
// Download script
//////////////////

$path = $_SERVER['DOCUMENT_ROOT']."/mysite/"; // change the path to fit your websites document structure
$fullPath = $path.$B->LastName.$P->Property_ID.".fnm";
if ($fd = fopen ($fullPath, "r")) {
$fsize = filesize($fullPath);
$path_parts = pathinfo($fullPath);
$ext = strtolower($path_parts["extension"]);
switch ($ext) {
case "fnm":
header("Content-type: application/fnm"); // add here more headers for diff. extensions
header("Content-Disposition: attachment; filename=\"".$path_parts["basename"]."\""); // use 'attachment' to force a download
break;
default;
header("Content-type: application/octet-stream");
header("Content-Disposition: filename=\"".$path_parts["basename"]."\"");
}
header("Content-length: $fsize");
header("Cache-control: private"); //use this to open files directly
while(!feof($fd)) {
$buffer = fread($fd, 2048);
echo $buffer;
}
}
fclose ($fd);

////////////////////////
//Delete the file from the server
/////////////////////////
$myFile = $path.$B->LastName.$P->Property_ID.".fnm";
unlink($myFile);

exit;

最佳答案

当我运行测试时,似乎只需要将cache-control 设置为Private,并添加Pragma: private header
示例代码:

header('Content-Disposition: attachment; filename='.urlencode($zipFileName));
header('Content-Type: application/zip');
header('Content-Length: '.filesize($zipFileName) );
header("Cache-Control: private");
header("Pragma: private");
readfile($zipFileName);


通过 https 与 IE8 完美搭配。

关于php - 通过 SSL 下载损坏的 IE8 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15622833/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com