File Yii2下载文件功能
我需要从文件夹下载文件/上传,但我只是在调用操作时出现超时错误, 任何人都可以帮助我:(File Yii2下载文件功能,file,pdf,download,transactions,yii2,File,Pdf,Download,Transactions,Yii2,我需要从文件夹下载文件/上传,但我只是在调用操作时出现超时错误, 任何人都可以帮助我:( 如果下载时间太长,我认为有两种可能 您可以增加脚本的最大执行时间。这不是最好的解决方案,因为对于太大的文件,脚本仍然会超时,但这是最简单的解决方案(可能存在与您的问题无关的性能考虑因素)。为此: ini\u集('max\u execution\u time',5*60)//5分钟 您可以使用Apache的X-SendFile头(如果此模块仅在Apache中启用)让Apache处理文件的发送。有关详细信
如果下载时间太长,我认为有两种可能
- 您可以增加脚本的最大执行时间。这不是最好的解决方案,因为对于太大的文件,脚本仍然会超时,但这是最简单的解决方案(可能存在与您的问题无关的性能考虑因素)。为此:
ini\u集('max\u execution\u time',5*60)//5分钟
- 您可以使用Apache的X-SendFile头(如果此模块仅在Apache中启用)让Apache处理文件的发送。有关详细信息,请参阅Yii2文档。请注意IEresponse->xSendFile($file)中的错误;
}您想发送给客户端的文件的大小是多少?如何使用ini_集('max_execution_time',5*60);您必须在
之前使用Yii:$app->response->sendFile('max_execution_time',5*60)
(或者ini_集('max_execution_time',5*60)
以详尽无遗)给下载时间。文档和。设置时间限制(5*60)
public function actionDownload() { $path = Yii::getAlias('@webroot') . '/uploads'; $file = $path . '/1.pdf'; if (file_exists($file)) { Yii::$app->response->sendFile($file); } }