readfile在新页面中打开,而不是在弹出窗口中下载文件

时间:2014-04-19 04:49:57

标签: php readfile

您需要帮助我正在使用php.net中的以下代码,以允许网站访问者在我的网站上下载文档

<?php

   $file = $_GET['file'];;

   if (file_exists($file)) {
   header('Content-Description: File Transfer');
   header('Content-Type: application/octet-stream');
   header('Content-Disposition: attachment; filename='.basename($file));
   header('Expires: 0');
   header('Cache-Control: must-revalidate');
   header('Pragma: public');
   header('Content-Length: ' . filesize($file));
   ob_clean();
   flush();
   readfile($file);
   exit;
   }
?>

我的问题是,为了让我保存/下载文档http://www.php.net/manual/en/function.readfile.php而不是输出对话框的代码,代码在一个显示异常数据的新页面中打开...代码可以工作完全在xampp localhost上,但不在服务器上

可能是什么问题?

1 个答案:

答案 0 :(得分:0)

代码似乎很完美。我的想法是服务器中的php.ini和xampp的配置可能不同。

我的建议是在服务器和xampp中运行<?php phpinfo(); ?>并比较配置并匹配服务器中的xampp配置。