使用ajax

时间:2018-05-31 10:27:21

标签: php laravel validation

我通过axios将数据上传到Laravel的后端。在这些数据中,我发送了一个图像。在我的本地开发环境(Homestead)中,一切运行良好,当我尝试上传更大的dans 2048 KB的图片时,我从后端收到一条错误,指出文件太大。

这是我的图片验证字符串之一:

$this->validate($request, [
    ...
    'infrastructure_image' => 'image|max:2048|mimes:jpg,jpeg,png'
    ...
]);

在这里,我尝试上传大于2048 KB的图片:

Here I try to upload a picture bigger than 2048 KB

我在网上尝试同样的事情(部署在Laravel Forge的服务器上):

Here I try the same thing online (deployed on a server with Laravel Forge)

所以使用相同的代码,我有两个不同的结果。起初,我认为它可能是PHP的配置,而Homestead可能比我的生产服务器更宽松。因此,我将有关文件上传的所有值更改为,例如,不小于2048KB,这将导致413错误。

现在我有PHP-FPM php.ini文件:

post_max_size = 8M

upload_max_filesize = 8M

我通过Forge重新启动了PHP-FPM。

仍然是同样的错误。

我在这里遗漏了什么吗?怎么能用相同的代码给我两个不同的结果?

我还意识到,在本地,似乎文件没有上传(可能是错误的印象,因为上传在本地更快 - >本地)。但是当在网站上传时,我看到正在上传的文件。不是说上传文件太大了吗?或者无论发生什么,post请求发送文件(不仅仅是它的信息),然后Laravel检查大小并在文件太大时返回错误。

提前感谢您的帮助!

0 个答案:

没有答案