AJAX 发送文件,但 PHP 不会收到它,如果文件太大(但它不是)

AJAX sends file, but PHP wont receive it, if file is too large (but it is not)

我正在使用 AJAX 上传两张图片(使用 base64 编码)。如果图像很小(例如,一张图像 500kB,另一张图像 300kB,总共 <1MB),它工作得很好。但是,如果图片较大(例如 1.5MB 和 300kB),则 PHP 不会接收到较大的图片(只能看到另一张)。这表明服务器端可能会达到限制,但是 PHP 参数 post_max_size 和 upload_max_filesize 设置为 256MB,因此应该不是问题。

有什么想法是错误的吗?

这里是 ajax:

$.ajax({
    url:'upload.php',
    method:'POST',
            contentType:"application/x-www-form-urlencoded",
    data: {orig:original,image:cropped},
    success:function(data)
    {
        $modal.modal('hide');
    }
});

这里是 PHP 代码:

echo print_r($_POST);

这是 PHP 设置:

file_uploads    On
max_execution_time  120
max_file_uploads    20
post_max_size   256M
upload_max_filesize 256M

在与虚拟主机管理员讨论后,我们发现问题是由 nginx 限制 client_max_body_size 引起的,该限制设置为 1MB。