php 7 php.ini upload_max_filesize无效

时间:2016-05-23 01:43:37

标签: php php-7

我在互联网上阅读了很多解决方案,但仍无法更改upload_max_filesize值(upload_max_filesize始终= 2M)

这是php.ini中加载的phpinfo()

Configuration File (php.ini) Path         /etc/php/7.0/apache2
Loaded Configuration File                    /etc/php/7.0/apache2/php.ini
Scan this dir for additional .ini files      /etc/php/7.0/apache2/conf.d 
upload_max_filesize 2M  2M
post_max_size   8M  8M

这是我在php.ini

中编辑的/etc/php/7.0/apache2/php.ini
; http://php.net/post-max-size
post_max_size = 86M
; http://php.net/upload-max-filesize
upload_max_filesize = 40M

即时通讯使用ubuntu 14.04,apache2,php7.0 (我在php.ini中每次更改后多次重置apache2)

11 个答案:

答案 0 :(得分:20)

我还有其他修复方法。 os:ubuntu 16.04 phpversion:7.0

我创建了一个 phpinfo.php 文件,其中包含:

<?php phpinfo() ?>

将phpinfo.php文件放在您网站的根目录www.mywebsite.com/phpinfo.php

导航到它并查找该行:

已加载的配置文件:/etc/php/7.0/cgi/php.ini

现在你知道加载了什么php.ini文件。

ssh进入服务器并使用您喜欢的编辑工具(我的是纳米)来调整php.ini

更改值以符合您的偏好。

post_max_size = 128M

upload_max_filesize = 64M

保存并关闭文件。

重启apache

sudo service apache2 restart

__

如果新值已设置,请检查phpinfo.ini。

如果他们这样做,你就准备好了。

答案 1 :(得分:12)

我修复了PHP-FPM 7.1

中编辑你的php.ini

/etc/php/7.1/fpm/php.ini

更改您想要的任何选项,post_max_size,upload_max_filesize,max_execution_time&amp;所以...

save&amp;关闭文件。

运行

sudo service php7.1-fpm restart

它会起作用!

答案 2 :(得分:6)

我退缩了!

在我加载的php.ini配置中,我的error_reporting值为E_ALL & ~E_NOTICE & ~E_STRICT & ~E_DEPRECATED - &gt;这是错误的!所以我把它改成了

error_reporting: E_ALL然后重启apache2服务器, 现在一切正常!

所以请注意:如果php.ini有任何错误,它将使用默认值(这意味着upload_max_filesize总是2M

答案 3 :(得分:2)

我还发现,重新启动httpd服务并没有在加载的配置文件(Fedora 29上的{/etc/php.ini)中获取更改。值得列出所有系统单位并为字符串“ php”做一个grep:

# systemctl list-unit-files | grep php
php-fpm.service

重新启动php-fpm对我有用:

# systemctl restart php-fpm

答案 4 :(得分:2)

对于php7.2-fpm

Ubuntu php-fpm位于/etc/php/7.2/fpm,所以

  1. cd /etc/php/7.2/fpm
  2. sudo nano php.ini
  3. 搜索post_max_size = 512M并添加您真正需要的收藏夹大小
  4. 搜索upload_max_filesize = 512M并添加您真正需要的收藏夹大小
  5. 保存文件
  6. 最后不要忘记重新启动PHP7.2-FPM以重新启动sudo service php7.2-fpm restart

仅此而已!

答案 5 :(得分:1)

大多数人都忘记通过终端重启他们的php,这就是为什么它不能正常工作,如果你认为你已经完成了所有事情,请务必重启你的php&amp;服务器。

答案 6 :(得分:0)

是的,实际上我忘了正确重启。

重新启动sudo服务apache2

首先将配置添加到 /etc/php/7.1/fpm/php.ini /etc/php/7.1/cli/php.ini
#/ php /-然后将您的php版本改为“ 7.1” 实际上,这些配置文件之一是活动文件(如果您想查看 indextest.php 文件中的<?php phpinfo() ?>命令使用什么,并在浏览器中进行检查) 然后根据需要在每个文件上更改这些参数:

post_max_size = 512M
upload_max_filesize = 512M

然后使用以下命令重新启动php服务器:

sudo service php7.0-fpm restart #php<then your php version here> instead "7.0"

sudo /etc/init.d/php7.1-fpm restart  #php<then your php version here> instead "7.1"

现在,您应该可以看到上传大小的更改。干杯!

here所示,您可以进一步了解php服务器控件:

$ sudo service php7.0-fpmstart # <- restart it
$ sudo service php7.0-fpm stop # <- restart it
$ sudo service php7.0-fpm restart # <- restart it
$ sudo service php7.0-fpm reload # <- reload it

答案 7 :(得分:0)

我正在使用nginx,我的解决方案是重新启动php-fpm。重新启动nginx并没有执行任何操作。

sudo service php7.2-fpm restart

答案 8 :(得分:0)

花了几个小时阅读论坛后,我已经解决了这种方式:

cd /etc/php
find . -name "*.ini" | xargs grep -il upload_max_filesize
./7.1/apache2/php.ini
./7.1/mods-available/better.ini
./7.1/cgi/php.ini
./7.1/cli/php.ini
./7.1/phpdbg/php.ini
./7.1/fpm/conf.d/20-better.ini
./7.1/fpm/php.ini
./7.1/embed/php.ini

依次在 ./ 7.1 / fpm / conf.d / 20-better.ini 中更改upload_max_filesize ,然后

/etc/init.d/php7.1-fpm restart

现在phpinfo报告: upload_max_filesize 10G 10G

希望这会有所帮助。

答案 9 :(得分:0)

我也有这个问题!

如果您使用的是php-fpm服务,则需要找到php-fpm.conf并添加行

php_admin_value[upload_max_filesize] = 100M

用于更改其他类型的值

#just for example
php_flag[display_errors] = off
php_admin_value[error_log] = /var/log/fpm-php.www.log
php_admin_flag[log_errors] = on

答案 10 :(得分:0)

对于那些拥有其他答案中提到的所有显而易见的设置并且PHP文件上传仍然无法正常工作的人。

检查php.ini中的open_basedir值。如果设置了一个值(出于安全原因应设置该值),请确保其中包含/tmp。或在upload_tmp_dir中选择一个自定义值,并相应地设置open_basedir

然后重新加载FPM服务。