Подтвердить что ты не робот

Php 7 php.ini upload_max_filesize не работает

Я прочитал множество решений в Интернете, но не могу изменить значение upload_max_filesize (upload_max_filesize always = 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

im, используя ubuntu 14.04, apache2, php7.0 (У меня reset apache2 много раз после каждого изменения в php.ini)

4b9b3361

Ответ 1

Я извинился!

в моей загруженной конфигурации php.ini, мои значения error_reporting E_ALL & ~E_NOTICE & ~E_STRICT & ~E_DEPRECATED → это неправильно!, поэтому я изменил ее на

error_reporting: E_ALL, а затем перезапустите сервер apache2, теперь все работает отлично!


поэтому обратите внимание: если php.ini есть какая-либо ошибка, он будет использовать значение по умолчанию (что означает upload_max_filesize always 2M)

Ответ 2

У меня было другое исправление. 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 на сервер и используйте свой любимый инструмент редактирования (mine is nano), чтобы настроить php.ini

измените значения в соответствии с вашими предпочтениями.

post_max_size = 128M

upload_max_filesize = 64M

Сохраните и закройте файл.

Перезапустить apache

sudo service apache2 restart

__

проверьте phpinfo.ini, если новые значения установлены.

и если они у вас есть, вы должны пойти.

Ответ 3

У меня было исправление для PHP-FPM 7.1

Измените свой php.ini в

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

Внесите изменения в любой желаемый вариант: post_max_size, upload_max_filesize, max_execution_time и т.д.

сохранить и закрыть файл.

бег

sudo service php7.1-fpm restart

Это сработает!

Ответ 4

Я также обнаружил, что перезапуск службы httpd не /etc/php.ini изменений в загруженном файле конфигурации (/etc/php.ini в Fedora 29). Стоит перечислить все модули systemd и выполнить grep для строки "php":

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

Перезапуск php-fpm помог мне:

# systemctl restart php-fpm

Ответ 5

Большинство людей забывают перезапустить свой php через терминал, почему он не работает, если вы считаете, что сделали все правильно, обязательно перезапустите php & server.

Ответ 6

Для 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

Вот и все!

Ответ 7

Да, на самом деле я забыл перезагрузить правильно.

перезапуск службы sudo apache2 недостаточно

сначала добавьте конфигурации в /etc/php/7.1/fpm/php.ini и /etc/php/7.1/cli/php.ini
#/php / - тогда ваша версия php здесь вместо "7.1". Фактически, один из этих файлов конфигурации является активным (если вы хотите посмотреть, для чего используется <?php phpinfo()?> в файле indextest.php и проверить его на браузер) Затем измените эти параметры для каждого файла с тем, что вы хотите:

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"

Теперь вы сможете увидеть изменения размера загрузки. Ура!

как показано здесь, вы можете узнать больше о контроллерах 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

Ответ 8

Я использую nginx, и мое решение было перезапустить php-fpm. Перезапуск nginx ничего не сделал.

sudo service php7.2-fpm restart

Ответ 9

Потратив часы на чтение форума, я решил так:

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

измените upload_max_filesize в ./7.1/fpm/conf.d/20-better.ini затем

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

Теперь phpinfo сообщает: upload_max_filesize 10G 10G

Надеюсь это поможет.

Ответ 10

у меня тоже была эта проблема!

если вы используете сервис 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

Ответ 11

Для тех, у кого есть все очевидные настройки, упомянутые в других ответах и загрузках PHP файлов, все еще не работает.

Проверьте php.ini для значения open_basedir. Если установлено значение (которое должно быть по соображениям безопасности), убедитесь, что в него включен /tmp. Или выберите пользовательское значение в upload_tmp_dir и установите open_basedir соответственно.

Затем перезагрузите сервис FPM.