我在 Ubuntu 服务器 16.04 上安装了 Moodle 3.2。我无法上传大于 2 MB 的文件。我收到的错误是:
enter code hereThe uploaded file exceeds the upload_max_filesize directive in php.ini.
我将 中的条目更改/etc/php/7.0/cli/php.ini
为800M
。我还在.htaccess
Moodle 目录中创建了一个包含以下条目的文件。
php_value upload_max_filesize 2097152000
php_value post_max_size 2097152000
php_value max_execution_time 6000
尽管如此,我无法在 Moodle 中发布任何大于 2 MB 的文件。请提出建议。
答案1
从php.net:
帖子最大大小
设置允许发布数据的最大大小。此设置也会影响文件上传。要上传大文件,该值必须大于upload_max_filesize
。一般而言,memory_limit
应大于post_max_size
。
upload_max_filesize是任何单个文件的限制。帖子最大大小是请求整个主体的限制,其中可能包含多个文件。
给定
post_max_size = 20M
和upload_max_filesize = 6M
您最多可以上传 3 个文件,每个文件 6M。如果相反post_max_size = 6M
,upload_max_filesize = 20M
则在达到 post_max_size 之前您只能上传一个 6M 文件。
默认情况下(在 PHP 7.0 中),帖子最大大小是upload_max_filesize:
post_max_size = 8M
upload_max_filesize = 2M
答案2
我发现放置 Apache 值的最佳位置是在 PHP 下的 Per 目录选项中。对于需要这些值的网站来说,它被称为 webmin 下的 PHP 配置值,或者使用站点 .conf,如下所示 我的一个配置文件