WordPress
Увеличение лимита памяти WordPress
When WordPress or a plugin dies with a memory exhaustion error, the fix is to raise the PHP memory limit, and on Kapsule that is a dropdown in KPanel rather than a file edit. This guide covers what…
Когда WordPress или плагин падает с ошибкой исчерпания памяти, решение состоит в повышении лимита памяти PHP, и на Kapsule это выпадающее меню в KPanel, а не редактирование файла. Это руководство охватывает значение ошибки, способ изменения лимита, выбор значения и действия, когда увеличение памяти не помогает.
Как выглядит ошибка
Самый очевидный вид: критическая ошибка, выведенная на страницу или записанная в журнал ошибок:
Fatal error: Allowed memory size of 268435456 bytes exhausted (tried to allocate 20480 bytes)
Разделите значение в байтах на 1048576, чтобы прочитать его в мегабайтах: 268435456 это 256 МБ, 134217728 это 128 МБ.
Она не всегда заявляет о себе столь явно. Та же самая основная проблема проявляется как:
- Совершенно пустая белая страница без сообщения, часто на одном конкретном экране.
- Панель управления WordPress загружается, но одна страница администратора (Плагины, Товары, Проверка здоровья) выходит из строя.
- Загрузка медиа или импорт, который заходит частично и останавливается.
- Ошибка 500, которая появляется только под нагрузкой.
Перед любыми изменениями убедитесь, что это действительно проблема памяти. Откройте вкладку Advanced, затем PHP сайта, прокрутите до PHP error log и нажмите Load log. Это показывает последние 200 записей с фильтром уровня. Ошибка исчерпания памяти появляется как Fatal. Если журнал пуст, проблема в другом: попробуйте WordPress White Screen и Reading Your Error Logs.
Изменение лимита в KPanel
- Войдите в KPanel и нажмите Websites в левой боковой панели.
- Нажмите на сайт, который вы хотите изменить.
- В меню самого сайта откройте Advanced, затем PHP.
- Найдите карточку PHP settings и строку Memory limit.
- Выберите значение из выпадающего меню:
128M,256M,512M,1024Mили2048M. - Нажмите Save Settings.

Перезагрузка не требуется, и сайт остается в рабочем состоянии. Ваши параметры записываются в файл .user.ini в корне вашего сайта, который KPanel управляет для вас.
Новое значение не всегда становится активным при следующей загрузке страницы. Сервер кэширует .user.ini до пяти минут, поэтому если старый лимит все еще сообщается, подождите несколько минут и проверьте еще раз, прежде чем предполагать, что изменение не заняло эффект.
Та же карточка управляет четырьмя другими значениями, которые часто требуют корректировки вместе с памятью:
| Параметр | Варианты | Повышайте, когда |
|---|---|---|
| Memory limit | 128M до 2048M | Критические ошибки памяти, пустые экраны администратора |
| Max execution time | 30 до 600 секунд | Импорты, экспорты и построение отчетов, которые останавливаются на полпути |
| Max upload size | 16M до 256M | ZIP-файл темы или видео отклоняется как слишком большой |
| Max input variables | 1000 до 10000 | Большие меню, большие формы, товары со множеством вариаций |
Post max size не отображается, потому что Kapsule устанавливает его автоматически, всегда на 1 МБ выше вашего лимита загрузки, поэтому форма с файлом в пределах лимита все еще подходит.
Какое значение выбрать
Каждый сайт Kapsule начинается с 256M, что уже в два раза больше стандарта WordPress и достаточно для большинства сайтов. Увеличивайте только при наличии фактической ошибки.
| Сайт | Рекомендуемый лимит |
|---|---|
| Информационный сайт или блог на легкой теме | 256M достаточно |
| Сайт на теме конструктора страниц с 20 или более плагинами | 256M, затем 512M, если ошибки сохраняются |
| Магазин WooCommerce, скромный каталог | 256M |
| WooCommerce с подписками, множеством вариаций или тяжелыми плагинами инвентаризации | 512M |
| Сеть мультисайта или большой сайт членства | 512M до 1024M |
Не переходите сразу на 2048M. Очень высокий лимит не делает сайт быстрее: он позволяет неправильно работающему плагину потребить гораздо больше памяти сервера, прежде чем он выйдет из строя, что превращает одну неработающую страницу в медленный сайт для каждого посетителя. Повышайте на один шаг, переполните и остановитесь, как только ошибка исчезнет.
Установка лимита в wp-config.php
Выпадающее меню KPanel устанавливает потолок сервера. WordPress имеет свои две константы, которые запрашивают память до этого потолка, и некоторая документация скажет вам установить их:
define( 'WP_MEMORY_LIMIT', '256M' );
define( 'WP_MAX_MEMORY_LIMIT', '512M' );
WP_MEMORY_LIMIT применяется к интерфейсу. WP_MAX_MEMORY_LIMIT применяется к области администратора, которая обычно требует больше. Добавьте их над строкой /* That's all, stop editing! */ в wp-config.php, используя встроенный редактор в Files, затем File Manager, или через SFTP.
Константа WordPress никогда не может превышать лимит сервера. Установка WP_MEMORY_LIMIT на 1024M в то время как выпадающее меню KPanel указывает 256M даст вам 256M и ложное чувство, что вы это исправили. Всегда сначала повышайте значение KPanel.
Для большинства людей константы не требуются. Установите значение KPanel и оставьте wp-config.php в покое.
Примечания WooCommerce
Магазины: самая частая причина превышения 256M. Проверьте представление магазина о лимите в WooCommerce, затем Status в wp-admin: отчет System Status выводит лимит памяти PHP, который он видит, что хороший способ подтвердить, что ваше изменение KPanel действительно применилось.
Повышайте до 512M, если вы запускаете любое из этих:
- Товары с вариантами с множеством вариаций каждый.
- WooCommerce Subscriptions или расширение бронирования.
- Два или более плагинов платежного шлюза активны одновременно.
- Синхронизация инвентаризации или бухгалтерии, которая выполняется в фоне.
Медленные или тайм-ауты страниц администратора WooCommerce обычно являются комбинацией памяти и времени выполнения. Повышайте Max execution time до 120 секунд одновременно и рассмотрите варианты кэширования в Setting Up WooCommerce.
Проверьте версию PHP
Если ошибки памяти начались сразу после изменения PHP, сама версия может быть причастна: старый плагин может плохо работать на новой среде. Карточка PHP version в верхней части того же вкладка показывает, что запускает сайт, и позволяет переключаться между PHP 8.4, 8.3, 8.2 и 8.1.
Изменение версии перезапускает пул PHP сайта, поэтому ожидайте несколько секунд простоя. Полная информация находится в Changing Your PHP Version.
Когда увеличение памяти это не исправляет
Двойное повышение лимита без улучшения означает, что что-то потребляет память, которую не должно. Проработайте это по порядку:
- Создайте резервную копию. Taking a Backup сначала, каждый раз.
- Найдите плагин. Деактивируйте плагины половинами, а не по одному: выключите половину, переполните, затем разделите, какая половина все еще не работает. Вы также можете использовать Plugin safe mode на вкладке WordPress, затем Plugins, который выключает каждый плагин сразу без удаления каких-либо данных плагина.
- Протестируйте тему. Временно переключитесь на стандартную тему WordPress. Тема, запускающая тяжелые запросы при каждой загрузке страницы, создает точно этот паттерн.
- Посмотрите на операцию, а не на сайт. Если только импорты не работают, проблема в времени выполнения и размере пакета, а не памяти. Импортируйте меньшими порциями.
- Прочитайте журнал. PHP error log на вкладке PHP называет файл и строку, которые закончились памятью, что обычно сразу идентифицирует плагин.
Если вы все еще застряли после 512M и чистого теста плагина, отправьте письмо на support@kapsulehost.com с доменом сайта, точной строкой критической ошибки и тем, что вы делали, когда это произошло.