当使用CodeIgniter中的上传功能时,如果我尝试上传大于20M的pdf文件,我要么得到"404文件未找到"或413请求实体太大。我可以看到它是"上传nn%",高达97%或98%,然后它退出并给我一个错误。如果我回显phpinfo(),我可以看到以下内容:
upload_max_filesize = 64M
post_max_size = 256M
此外,如果我使用cPanel上的文件管理器,我可以上传更大的文件,没有问题。
我把以下内容放在。htaccess文件中(这是另一个问题的建议),但它没有帮助:
<IfModule mod_php5.c>
php_value upload_max_filesize 128M
php_value post_max_size 128M
php_value max_input_time 3600
php_value max_execution_time 3600
</IfModule>
<IfModule mod_php4.c>
php_value upload_max_filesize 128M
php_value post_max_size 128M
php_value max_input_time 3600
php_value max_execution_time 3600
</IfModule>
看起来错误不是来自PHP而是来自web服务器。
如果你使用nginx
,你可以使用client_max_body_size
指令提高最大允许的帖子大小
server {
...
client_max_body_size 128m
...
}
如果你正在使用Apache,那么在它的配置文件(httpd.conf)中有几个选项要检查。
LimitRequestBody 131072000
如果在Apache中使用了mod_security模块,也要更新它的限制:
SecRequestBodyLimit 131072000
不要忘记重启服务器