Вопрос или проблема
Я разместил сайт на WordPress на Ubuntu 20.04 с помощью LAMP. Теперь, когда я пытаюсь установить тему, появляется ошибка: “Загруженный файл превышает директиву upload_max_filesize в php.ini.” Я не могу это исправить, изменив upload_max_filesize в /etc/php/7.4/cli/php.ini.
Как видно на изображении ниже, рядом с именем файла php.ini написано “Только для чтения”.
Теперь как я могу отредактировать этот файл?
Вам нужно редактировать этот файл от имени пользователя root.
Из терминала:
sudoedit /etc/php/7.4/cli/php.ini
Если вы не загружаете файлы через интерфейс командной строки (CLI), это может быть не тот файл, который вам нужен. Apache использует файл php.ini
, который находится в /etc/php/7.4/apache2
.
-
SSH на ваш сервер (если вы еще не подключены)
-
Отредактируйте файл с помощью вашего предпочтительного текстового редактора и
sudo
:sudo vi /etc/php/7.4/apache2/php.ini
Если вы решите использовать
vi
, как в приведенном выше примере, вы можете:- быстро найти значение конфигурации, напечатав ?, а затем имя значения:
upload_max_filesize
- Переключиться в “режим редактирования” в
vi
, нажав I - Изменить значение на что-то более подходящее, например
128M
- быстро найти значение конфигурации, напечатав ?, а затем имя значения:
-
Сохраните файл
Если вы используете
vi
, вы можете:- Выйти из “режима редактирования”, нажав Esc
- Ввести команду для W написания файла и Q выхода из редактора: : ⇢ W ⇢ Q
-
Перезапустите веб-сервер:
sudo service apache2 restart
Вот и всё 👍🏻
Ответ или решение
Существует несколько причин, по которым вы не можете изменить файл php.ini, что вызывает ошибку "Загружаемый файл превышает директиву upload_max_filesize в php.ini", при попытке загрузки темы на ваш сайт WordPress. Давайте разберемся с этой проблемой и предложим решение.
Причина проблемы
-
Неправильный файл php.ini: Ваша проблема связана с тем, что вы редактировали файл php.ini, находящийся в каталоге CLI (
/etc/php/7.4/cli/php.ini
), который используется для командной строки. Однако, веб-сервер Apache использует другой файл конфигурации php.ini, который находится в/etc/php/7.4/apache2/php.ini
. -
Права доступа: На изображении указано, что файл имеет статус "Только для чтения". Это может быть связано с недостаточными правами пользователя для редактирования данного файла.
Решение
Чтобы успешно изменить значение upload_max_filesize
, выполните следующие шаги:
-
Подключитесь к вашему серверу по SSH, если вы еще не сделали этого.
-
Редактируйте файл php.ini для Apache. Для этого откройте терминал и выполните следующую команду с правами суперпользователя:
sudo nano /etc/php/7.4/apache2/php.ini
или, если вам комфортнее использовать другой текстовый редактор:
sudo vi /etc/php/7.4/apache2/php.ini
-
Найдите параметр upload_max_filesize:
- В редакторе
nano
вы можете использовать комбинацию клавишCtrl + W
, затем ввестиupload_max_filesize
и нажатьEnter
. - В редакторе
vi
для поиска вам нужно ввести?upload_max_filesize
и нажатьEnter
.
- В редакторе
-
Измените значение. Например, чтобы увеличить лимит загрузки до 128 Мб, найдите строку, которая выглядит как
upload_max_filesize = 2M
, и измените её на:upload_max_filesize = 128M
-
Сохраните изменения:
- В
nano
используйтеCtrl + O
, затемEnter
для сохранения, иCtrl + X
для выхода из редактора. - В
vi
выйдите из режима редактирования, нажавEsc
, и введите команду:wq
, затем нажмитеEnter
.
- В
-
Перезапустите веб-сервер, чтобы изменения вступили в силу:
sudo service apache2 restart
Заключение
Теперь вы успешно изменили параметр upload_max_filesize
в правильном файле php.ini, и проблема с загрузкой тем должна быть решена. Если ошибка все еще возникает, проверьте другие параметры, связанные с загрузкой файлов, такие как post_max_size
, так как они также могут влиять на процесс загрузки.