在Laravel中上传超过2M的图像没有路径

时间:2016-09-06 20:17:18

标签: php laravel nginx

当我将超过2MB的图像上传到我的Laravel应用程序时,它以application/octet-stream mime类型而不是image/jpeg进入,并且它也没有临时路径。我的控制器看起来像这样:

public function upload(Request $request)
{
    if ($request->isMethod('post')) {
        $file = $request->file('entry_photo');
        ...
    }
}

如果我运行dd($file);,则表明该路径只是我的公共目录,而mime是application/octet-stream。这仅发生在超过2M的图像上。我的php_ini将upload_max_filesize设置为10M,将post_max_size设置为8M。我确定这是服务器的事情,但似乎无法弄明白。

1 个答案:

答案 0 :(得分:1)

首先,我建议在临时页面上输出phpinfo(),以确定您对php.ini所做的更改是否已生效。我之前陷入了不重启fpm的陷阱,因此没有应用这些变化。

其次,如果您使用的是nginx,请确保您的nginx配置中包含以下内容

client_max_body_size 100m;

有关文件上传的nginx设置的更多信息,请访问:

https://www.nginx.com/resources/wiki/modules/upload/