首页 文章

PHP最大文件上载配置问题[关闭]

提问于
浏览
0

关于php.ini post_max_size和upload_max_filesize如何工作,我遇到了一些令人困惑的问题 . 阅读php.net文档,我知道通过设置post_max_size = 16M和upload_max_filesize = 16M,将使我们能够上传最大16MB的文件 . 但我所看到的并非如此 . 我正在使用此检查加载的.ini值

$max_upload = (int)(ini_get('upload_max_filesize'));
$max_post = (int)(ini_get('post_max_size'));
$memory_limit = (int)(ini_get('memory_limit'));
$upload_mb = min($max_upload, $max_post, $memory_limit);

echo $max_upload;
echo $max_post;
echo $memory_limit;
echo $upload_mb;

输出:

2
8
96
2

该值与我在php.ini中指定的值不同!

这是我的php.ini配置:https://docs.google.com/file/d/0B2o1vMJ7XFKyT0xDWUhJTnR0M2c/edit?usp=sharing

我已经通过检查phpinfo()的输出确保这个配置是php解释器加载的配置;

谢谢

2 回答

  • 1

    我找到了解决自己问题的方法 . 通过更彻底地检查/etc/php5/fpm/php.ini,我发现:

    error_reporting = E_ALL error_reporting = E_ALL & ~E_DEPRECATED ~E_DEPRECATED
    

    通过将该值固定到

    error_reporting = E_ALL & ~E_DEPRECATED
    

    解决了这个问题 . 我之所以拥有这些嵌套值的原因是因为,我首先使用sed来修改值,我忘了逃避'&'字符 . (&表示插入子字符串,因此它将在此之前插入字符串) . 将它转换为'\&'后,sed命令按预期工作 .

    干杯

  • 0

    你确定更改正确的php.ini看到php ini目录的Apache配置也许你改变另一个php.ini

    在Apache配置中搜索这样的东西,用于设置php ini目录

    PHPINIDir "c:/php"
    

    另一个问题可能是在htaccess中设置此参数,如果在运行中设置参数覆盖 .

    喜欢

    php_value upload_max_filesize 10M
     php_value post_max_size 10M
    

    注意:htaccess有时会在父目录中设置

相关问题