通过IDM(Internet Download Manager)使用PHP下载文件

时间:2018-06-11 22:37:17

标签: php downloading download-manager

我正在一个用户可以下载文件的网页上工作,但只有在接受许可后,我才使用PHP检查用户是否检查了许可证并且没有透露文件的URL,代码可以正常工作(下载),这里是代码:

$fileName = $_GET['AppName'] . " - Setup.exe";

$path = 'JO9E/' . $fileName;
$size = filesize($path);

header('Content-Type: application/octet-stream');
header('Content-Length: ' . $size);
header('Content-Disposition: attachment; filename=' . $fileName);
header('Content-Transfer-Encoding: binary');
header('Expires: 0');
header('Cache-Control: must-revalidate');
header('Pragma: public');

$file = @ fopen($path, 'rb');

if($file) {
    $_SESSION["TEMP"] = "nO";
    fpassthru($file);
    echo "<script type='text/javascript'>window.close();</script>";
}

但现在我的问题是:

我的计算机上安装了IDM(Internet Download Manager),当我想下载文件时... IDM显示下载文件的下载框,显示{{1文件路径,也不会下载文件当我点击开始下载时,它会丢失连接。

现在我没有显示PHP文件路径的问题,因为它不会下载任何内容,除非用户接受了许可并来自正确的网页,但我想 strong>至少用户能够下载文件,即使他已安装PHP,因为在此设置中如果用户安装了IDM,他必须转换{{1}中的集成功能为了通过浏览器正确下载文件。

希望有人可以帮助我。

1 个答案:

答案 0 :(得分:0)

您应该在下载链接旁边添加一条小说明,以 right click and press Save As

IDM浏览器扩展名会捕获所有IDM选项中具有扩展名的文件,因此它处于Bowser级别。