CakePHP文件下载已损坏
我有一个网站,用户可以上传图片,然后下载。我已经将我的项目移动到了一个实时网络主机上,但问题是,当我尝试下载我刚刚上传的文件时,它下载了它,但之后无法打开它,它说它已损坏。。。不过,我在当地没有遇到任何问题 以下是我的下载操作:CakePHP文件下载已损坏,cakephp,upload,download,Cakephp,Upload,Download,我有一个网站,用户可以上传图片,然后下载。我已经将我的项目移动到了一个实时网络主机上,但问题是,当我尝试下载我刚刚上传的文件时,它下载了它,但之后无法打开它,它说它已损坏。。。不过,我在当地没有遇到任何问题 以下是我的下载操作: public function getfile($accesskey) { $this->autoRender = false; if ($accesskey != null) { $data = $this->ge
public function getfile($accesskey) {
$this->autoRender = false;
if ($accesskey != null) {
$data = $this->getfileinfo($accesskey);
if (!empty($data)) {
$this->response->file(WWW_ROOT.$data['Document']['dlpath'], array('download' => true, $data['Document']['name']));
return $this->response;
} else {
$this->redirect(array('controller' => 'documents', 'action' => 'upload'));
}
} else {
$this->redirect(array('controller' => 'documents', 'action' => 'upload'));
}
}
$data['Document']['dlpath']包含以下内容:
/home/vol2_2/byethost17.com/b17_15357734/htdocs/app/webroot/uploads/2014/09/26/filekey/imagename.extension
这是我第一次这样做,所以我可能犯了一个错误。。这条路错了,或者我搞糊涂了
编辑:看来我所犯的错误比看起来要严重得多。我在一个文本编辑器中打开了被损坏的文件,看到了一些关于set_time_limit()和php安全模式的错误
以下是错误:
Warning (2) : set_time_limit() has been disabled for security reasons [ CORE/Cake/Network/CakeResponse.php , line 1458 ] Code Context
set_time_limit - [internal], line ??
CakeResponse::_sendFile() - CORE/Cake/Network/CakeResponse.php, line 1458
CakeResponse::send() - CORE/Cake/Network/CakeResponse.php, line 429
MediaView::render() - CORE/Cake/View/MediaView.php, line 96
Controller::render() - CORE/Cake/Controller/Controller.php, line 954
Dispatcher::_invoke() - CORE/Cake/Routing/Dispatcher.php, line 198
Dispatcher::dispatch() - CORE/Cake/Routing/Dispatcher.php, line 165
[main] - APP/webroot/index.php, line 108
你确定是下载功能而不是上传造成的吗?通过ftp或其他方式登录服务器并查看存储的文件,是否正常?是的,所有文件夹都已正确创建,文件也已移入,当我从ftp下载文件时,该文件也是正确的。如何准确描述文件中的错误?