我的服务器上有一些电子书,我希望人们能够下载。我上传了它们,当我通过我的ftp工具下载它们时,一切都很完美。当我使用我的脚本供用户下载时,我在口径中得到以下错误:
MobiError: Unknown book type: '\x00\x00\x00BOOKM'
我处理文件输出的脚本如下:
$file_url = ABSPATH . $file['file'];
$basename = $story->post_title . $subtitle . '.' . $_POST['type'];
$filename = basename(mb_ereg_replace("([^\w\s\d\-_~,;\[\]\(\).])", '', $basename));
header('Content-Type: application/octet-stream');
header("Content-Transfer-Encoding: Binary");
header("Content-Disposition: attachment; filename=\"" . $filename . "\"");
readfile($file_url);
die();
然后我说的所有mobi读者都说文件存在问题。我不知道出了什么问题。此外,当我在文本编辑器中打开文件时,它们都是不同的类型。我的PHP脚本中的那个看起来如下:
从我的ftp工具开始工作的那个看起来像这样:任何可以帮助我找到我做错的人?顺便说一下.epub文件对我的脚本来说没问题。
答案 0 :(得分:0)
我通过输出文件解决了这个问题,如下所示:
ob_clean();
flush();
readfile($path);
exit;