编程语言
首页 > 编程语言> > php-当文件大小大于2mb时Laravel文件上传失败

php-当文件大小大于2mb时Laravel文件上传失败

作者:互联网

我昨天启动了一个早期测试版网站.是vrep.io,我遇到了一个奇怪的问题.当上传大于2mb的图像(用户头像)时,laravel验证程序会返回“ validation.uploaded”错误消息.

验证码:

protected function basicValidator( array $data ) {
    return Validator::make( $data, [
        'name'        => 'required|min:2|max:255',
        'occupation'  => 'max:255',
        'avatar'      => 'mimes:jpeg,png,gif|dimensions:min_width=500,min_height=500|max:8000',
        'drop-avatar' => 'in:1,0',
    ],
        [
            'avatar.mimes'      => 'Uploaded file format should be jpeg, jpg, png or gif.',
            'avatar.dimensions' => 'Image should have minimum 500x500px dimensions.',
            'avatar.max'        => 'Maximum allowed file size is 6 MB.',
        ] );
}

我更改了当前的php.ini文件参数:

upload_max_filesize   100M
post_max_size         100M
memory_limit          256M

它在AWS EC2实例上运行. UBUNTU 16.04和Nginx.

我还对nginx配置文件进行了更改:

$sudo vim /etc/nginx/sites-available/default

client_max_body_size 100m;

重新启动nginx和php,甚至重新启动整个Web服务器.没有效果.上载大于2mb的文件时仍然出现相同的错误.

ps.我在本地运行homestead,文件上传工作正常.问题仅在生产服务器上.

我在那里想念什么?

解决方法:

我不知道如何,但是即使我整天都在寻找答案,我终于在这里发布后的几分钟内终于找到了解决方案. SO上发生了一些魔术.
所以我在编辑错误的php.ini文件.我正在通过ssh检查使用了哪个php ini文件,如下所示:

$php --ini

但是它在那里显示了错误的文件.实际配置文件由于某些原因而有所不同.

现在我转储了php信息:

<?php
phpinfo();
?>

找到实际的配置文件,一切正常.希望这会帮助到别人.

标签:laravel,nginx,amazon-web-services,amazon-ec2,php
来源: https://codeday.me/bug/20191111/2022628.html