Laravel文件从存储文件夹下载已损坏

nar*_*a91 6 php laravel laravel-5.2

我试图从存储文件夹下载jpg/png图像,下载后它会被破坏.这是我的控制器

public function download($filename) {

    $headers = array(
        'Content-Type: image/png',
    );
    return response()->download(storage_path() . '/'.$filename, 'final.png', $headers);

}
Run Code Online (Sandbox Code Playgroud)

打开后看起来像这样 在此输入图像描述

即使我使用核心PHP脚本下载仍然面临同样的问题.

小智 10

我相信Laravel框架可能会引入可能破坏header()函数的空格.

在第一次header()调用之前使用ob_end_clean()删除任何额外的空格.


Jyo*_*nia 8

像这样之前添加此方法

ob_end_clean();
$headers = array(
    'Content-Type: image/png',
);
return response()->download(storage_path() . '/'.$filename, 'final.png', $headers);
Run Code Online (Sandbox Code Playgroud)

!请享用