Как исправить проблемы с выработкой PHP-памяти в WordPress

Диагностика проблемы с памятью PHP в WordPress

Частая ошибка на WordPress-сайтах — исчерпание лимита памяти PHP (memory limit). Это проявляется в виде ошибок Allowed memory size exhausted в логах или при загрузке страниц, особенно при работе с ресурсоемкими плагинами и темами.

Чтобы проверить текущий лимит памяти PHP, можно использовать следующий код, добавив его в файл темы functions.php или создав отдельный PHP-файл в корне сайта:

<?php
echo 'PHP memory limit: ' . ini_get('memory_limit');
?>

Также в WordPress можно вывести лимит через функцию:

echo WP_MEMORY_LIMIT;

Если сайт падает с ошибкой памяти, это значит, что лимит установлен слишком низко.

Пошаговое решение увеличения лимита памяти PHP в WordPress

1. Изменение лимита через wp-config.php

Откройте wp-config.php в корне сайта и добавьте или измените строку:

define('WP_MEMORY_LIMIT', '256M');

Это задаст лимит памяти в 256 мегабайт для фронтенда.

2. Увеличение лимита в php.ini

Если есть доступ к файлу php.ini, найдите или добавьте строку:

memory_limit = 256M

Если доступа нет, можно создать файл php.ini в корне сайта с этим значением.

3. Изменение лимита через .htaccess

Если сервер Apache и разрешены директивы в .htaccess, добавьте:

php_value memory_limit 256M

4. Проверка установленных лимитов

После внесения изменений перезагрузите сервер (если возможно) и проверьте лимит снова через PHP-скрипт или функцию из шага диагностики.

Как проверить, что проблема решена

  • Попробуйте воспроизвести ошибку, которая возникала ранее (например, загрузить страницу или выполнить скрипт, вызывавший ошибку памяти).
  • Если ошибка Allowed memory size exhausted больше не появляется — проблема решена.
  • Также проверьте логи сервера и PHP на наличие ошибок.

Частые ошибки при работе с лимитом памяти PHP

  • Установка слишком малого лимита — многие сайты требуют минимум 128M, лучше 256M для WooCommerce и тяжелых плагинов.
  • Несоответствие лимита в разных местах — если в php.ini 64M, а в wp-config.php 256M, может применяться меньшее значение.
  • Серверные ограничения — хостинг может блокировать повышение лимита, тогда нужно связаться с поддержкой.
  • Изменение лимита через .htaccess на Nginx-сервере не сработает — для Nginx нужны настройки в конфигурации сервера.

Практические советы по безопасности и производительности

  • Увеличение лимита памяти — это временное решение. Оптимизируйте плагины и темы, чтобы снизить потребление памяти.
  • Отключайте или заменяйте тяжелые плагины, если они вызывают утечки памяти.
  • Используйте профилировщики, например Query Monitor, чтобы выявить проблемные участки кода.
  • Регулярно обновляйте WordPress, темы и плагины для лучшей совместимости и оптимизации.

Пример кода для безопасного увеличения лимита памяти в WordPress

function increase_memory_limit() {
    if (WP_MEMORY_LIMIT < '256M') {
        define('WP_MEMORY_LIMIT', '256M');
    }
}
add_action('init', 'increase_memory_limit');

Сравнение методов увеличения лимита памяти

МетодПлюсыМинусы
wp-config.phpПростой, доступен на любом хостингеМожет игнорироваться серверными настройками
php.iniСамый надежный способНе всегда есть доступ, требует перезагрузки сервера
.htaccessБыстрое применение на ApacheНе работает на Nginx, может быть запрещен хостингом
Как найти и исправить некорректные SKU товаров в WooCommerce
22.09.2026
Как автоматизировать обновление тем и плагинов в WordPress без рисков
29.09.2026
Как настроить отложенный запуск задач в WordPress без WP-Cron
03.09.2026
Как правильно настроить WooCommerce для массовой изменения цен и складских остатков
30.09.2026
Как автоматизировать очистку старого кеша WooCommerce без плагинов
02.10.2026
×

AI-плагин от WPShop.ru

анализирует конкурентов

пишет статьи

готовит SEO

генерирует изображения

и еще кое-что...
WPGPT
Плагин, который наполняет ваш сайт WordPress
Узнать больше