如果选择的文件很大,表单将不会提交

Form won't submit if chosen file is large

我有一个 HTML 表单,用于上传文件(和其他一些数据)。表格如下:

<form enctype="multipart/form-data" action="register.php" method="post">
    <div class="form-group">
        <label for="reason">Reason</label>
        <textarea id="reason" class="form-control" name="reason_text" rows="4"></textarea>
    </div>
    <div class="form-group">
        <label for="reason_file">Attachment</label>
        <input type="file" id="reason_file" name="reason_file">
    </div>
    <div class="form-group">
        <label for="amount">Score</label>
        <input type="number" id="amount" class="form-control" name="amount">
    </div>
    <input type="submit" class="btn btn-primary" name="register" value="Register">
</form>

如果我将此表单用于一个相当小的文件,比方说 1 MB,它会很好,我的服务器端可以正确处理它。但是,如果我使用一个例如 5.5 MB 的文件,表单将只重定向到操作页面 (register.php),但它不会发送任何 POST 数据。或者至少,当使用 PHP 检查时,$_POST 和 $_FILES 都是完全空的。

此文件大小限制的依据在哪里?我该如何更改?

在此先感谢您的帮助!

在我的服务器上,post_max_size 比 upload_max_filesize 小(很多)。第一个是 3M,而后者是 64M。这就是为什么我认为我的限制是 64M 但显然要低得多。解决方法是更改​​ php.ini 中的以下规则:

post_max_size = 3M