1

在 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 相当陌生。

4

1 回答 1

1

看起来错误不是来自 PHP,而是来自 Web 服务器。

如果您正在使用,您可以使用指令nginx增加最大允许的帖子大小client_max_body_size

server {
    ...
    client_max_body_size 128m
    ...
}

如果您使用的是 Apache,那么可以在其配置文件 (httpd.conf) 中检查几个选项。

LimitRequestBody 131072000

如果在 Apache 中使用了 mod_security 模块,也要更新它的限制:

SecRequestBodyLimit 131072000

不要忘记重新启动服务器。

于 2016-10-14T06:59:43.537 回答