Вы работали с конструктором страниц, делали слайдер или установили какой-то плагин и получили ошибку превышения лимита PHP памяти.
Это одна из самых частых ошибок Вордпресс, которую можно легко исправить увеличением лимита PHP памяти.
В этой статье вы узнаете, как исправить эту ошибку и увеличить лимит памяти WP вручную или с помощью плагина.
Содержание:
- Что такое PHP память и для чего она используется
- Как узнать сколько PHP памяти выделено
- Сколько PHP памяти нужно
Что такое PHP память и для чего она используется
Объем PHP памяти определяет, сколько PHP данных может обрабатываться за определенное количество времени для выполнения какой-то задачи.
Одна из причин, по которой ограничивается количество PHP памяти — чтобы не дать одному сайту использовать все ресурсы сервера и замедлить другие сайты на этом сервере.
Как узнать сколько PHP памяти выделено
По умолчанию Вордпресс выделяет 40 MB для обычного сайта и 64 MB для мультисайта.
Если у вас установлен WooCommerce, зайдите в WooCommerce — Статус — Состояние системы — WP Memory Limit. Некоторые темы, пейдж-билдеры и плагины безопасности показывают эту информацию, попробуйте найти. Если вы не можете найти, проверьте это плагином Server IP & Memory Usage Display или TPC! Memory Usage (оба бесплатные) или еще чем-то подобным.
Сколько PHP памяти нужно
В зависимости от плагинов, которые вы используете, увеличьте до 128 MB. Если у вас много плагинов, или магазин на WooCommerce — увеличьте до 256 MB.
1. Редактирование файла wp-config.php
Через файловый менеджер на хостинге или через FTP клиент зайдите в корневую папку сайта и найдите файл wp-config.php. Откройте его и добавьте такую запись:
Комментарий может быть любой, можно на русском языке. Добавьте эту запись в конце файла перед строкой Это всё, дальше не редактируем. Сохраните, загрузите. Очистите кеш, если вы пользуетесь плагином кеша.
https://codex.wordpress.org/Editing_wp-config.php#Increasing_memory_allocated_to_PHP
2. Редактирование файла php.ini
В корневой папке сайта найдите или создайте файл php.ini. В стандартной установке WP этого файла нет.
Добавьте эту строку в файл:
memory_limit = 128M;
Сохраните файл, очистите кеш.
3. Редактирование файла .htaccess
Этот файл тоже находится в корневой папке, но он может быть скрытым. Посмотрите в настройках файлового менеджера или FTP клиента, сделайте скрытые файлы видимыми.
Добавьте в файл эту запись:
php_value memory_limit 128M
Сохраните файл, очистите кеш.
В зависимости от настроек вашего сервера, какой-то способ может работать, какой-то — нет.
Если никакой из способов не сработал — обратитесь в техподдержку хостинга, возможно, стоят какие-то специальные ограничения на увеличение лимита памяти PHP, спецы из техподдержки могут увеличить ваш лимит вручную.
Способ 4
Если вы не хотите редактировать файлы, для увеличения лимита памяти WP есть бесплатные плагины. Минус этого способа в том, что плагин всегда тяжелее, чем строка кода, это микроскопически отразится на скорости вашего сайта, — в некоторых ситуациях ваш сайт будет грузиться на несколько миллисекунд медленнее.
Используйте этот способ, когда у вас нет доступа к сайту по FTP.
Надеюсь, статья была полезна. Оставляйте комментарии.
спасибо, отличная статья. У меня плагин, который парсит множество курсов валют, нужно было срочно увеличить паямть до 900мб, а то плагин мощно есть память ))
Отлично — целых 4 способа с толковым пояснением. Но, хотелось бы получить уточнения по «конфликту интересов».
Поясню на примере. Выскочило сообщение, что не хватает оперативки, причём был указан лимит 40М. В службе поддержки хостинга заявили «проблема решается увеличением параметра memory_limit в php.ini в cPanel в разделе «Редактор MultiPHP INI», но там в настройках и так стоят «приличные» 128М. Проверил файл php.ini. в Вордпрессе — там его нет, и .htaccess в паблике нет. Вот я и не пойму, то ли хостер «химичит», то ли в чём другом загвоздка.
П.С.: Хостинг дешёвый, тормозит загрузка
Если хостинг дешевый, то проблема скорее всего в хостинге, они часто ограничивают ресурсы.
Попробуйте добавить в wp-config и попробуйте разные параметры. Попробуйте меньше 40М.
.htaccess может быть невидим, php.ini в стандартной установке Вордпресс нет.
Все сделал по описанию, и все получилось! Благодарю автора за четкое пояснение.