为什么我写的PHP下载代码放在LINUX下测试,下载下来的文件是.php文件,WIN下边没任何问题的! 20
下载代码如下:$file=fopen($file_dir.$file_name,"r");//打开文件header('Pragma:public');header('Ca...
下载代码如下:
$file = fopen($file_dir . $file_name,"r"); // 打开文件
header('Pragma: public');
header('Cache-Control: no-store, no-cache, must-revalidate');
header('Cache-Control: pre-check=0, post-check=0, max-age=0');
header('Content-Encoding: none');
header('Content-Disposition: attachment; filename="'.$file_name.'"');//文件名称
header("Accept-Ranges:bytes");
header('Content-Transfer-Encoding: binary');
header('Content-length: '.filesize($file_dir . $file_name));//文件大小
header("Content-Type: application/force-download");
// 输出文件内容
echo fread($file,filesize($file_dir . $file_name));
fclose($file); 展开
$file = fopen($file_dir . $file_name,"r"); // 打开文件
header('Pragma: public');
header('Cache-Control: no-store, no-cache, must-revalidate');
header('Cache-Control: pre-check=0, post-check=0, max-age=0');
header('Content-Encoding: none');
header('Content-Disposition: attachment; filename="'.$file_name.'"');//文件名称
header("Accept-Ranges:bytes");
header('Content-Transfer-Encoding: binary');
header('Content-length: '.filesize($file_dir . $file_name));//文件大小
header("Content-Type: application/force-download");
// 输出文件内容
echo fread($file,filesize($file_dir . $file_name));
fclose($file); 展开
3个回答
展开全部
有两种可能下载php文件
1. 服务器不支持php.会直接下载
2. 你上面的那个file_name 是xxx.php
一般这两个条件可以下载php文件
1. 服务器不支持php.会直接下载
2. 你上面的那个file_name 是xxx.php
一般这两个条件可以下载php文件
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
linux服务器没有解析php文件。检查apache日志……
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
$file_name的值是什么?
更多追问追答
追问
要下载的文件名
追答
问题是你重写文件,我截取了部分我自己的程序,我用的是copy,没问题。或者你看看php.ini里相关File Uploads的配置项目。
global $myfile_name;
if( $cmd == "add" ){
If($GLOBALS[myfile] != "none") {
@copy($GLOBALS[myfile],"/data/www/myfile/$USERNAME/$myfile_name");
}
else
exit();
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询