Продолжаем рубрику “Учимся вместе”, и в этой статье я расскажу – что такое PHP Memory Limit и как увеличить на своем вебсайте самостоятельно. Существует всего три способа о которых и пойдет речь в сегодняшнем материале.
PHP Memory Limit – это
Максимальный лимит памяти PHP (не путать с оперативной памятью RAM), которая выделяется на выполнение скриптов и сценариев на сайте. Обычно, PHP Mermory Limit настроен по умолчанию и его не нужно трогать, но бывают сайты со сложными и габаритными скриптами (например, онлайн-конструкторы страниц – Elementor, Divi или плагин интернет-магазина WooCommerce), а лимит на сервере, к примеру, занижен. Тогда и нужно поднимать планку, потому что скрипты просто не впишутся в лимит и задачи не выполнятся.
Пример ошибки превышения лимита памяти PHP:
Fatal error: Allowed memory size of 134217728 bytes exhausted (tried to allocate 72 bytes)
Одна из причин, по которой ограничивается количество PHP памяти — чтобы не дать одному сайту использовать все ресурсы сервера и замедлить другие сайты на этом сервере. Поэтому, не стоит устанавливать этот параметр слишком большим.
PHP Memory Limit не панацея! Увеличивайте только в крайних случаях.
Прежде, чем я поделюсь с вами тремя способами как это сделать, дам еще немного фактов:
- PHP – язык программирования высокого уровня, который обладает очень серьезными и широкими возможностями, например позволяет создавать веб-проекты любого уровня сложности, использовать базу данных MySQL и т.д.
- Существует множество версий PHP, которые содержат различные модули. Эти модули расширяют функционал веб-сервера.
- Интерпретатор PHP позволяет обрабатывать веб-скрипты и сценарии на сайте.
- Функция PHP – mail одна из самых востребованных – помогает отправлять с вашего сервера письма, запускает рассылки.
Как увеличить PHP Memory Limit
Редактирование файла PHP.INI
Первое, что нужно сделать – узнать где у вас на хостинге лежит php.ini. Нужно выполнить не сложную манипуляцию:
- Создать файл с расширением .php и поместить в него строку:
<?php
phpinfo();
?> - Сохранить этот файл под именем phpinfo.php и залить в корневую директорию сайта /. Можете также скачать у меня уже готовый файлик.
- Открыть в браузере URL-адрес: ваш_домен/phpinfo.php
- Откроется таблица, найти колонку Configuration File (php.ini):
На Linux-серверах, php.ini обычно находится на /usr/local/php/etc/.
В ISP Manager можно быстро получить доступ к файлу через Менеджер файлов -> php-bin:
Но, чтобы его изменить, нужно выставить сначала права доступа 644, по умолчанию у него 400:
Редактирование WP-CONFIG.PHP
Этот метод подойдет всем у кого сайт на WordPress. Файл находится в корневой директории /.
Откройте его, например, через FTP-клиент:
Найдите строку define(‘WP_MEMORY_LIMIT’, ’64M’); и просто измените значение:
Сохраните файл и очистите кэш. Изменения вступят в силу.
Редактирование .htaccess
Аналогично находит в корневой директории, открываем и добавляем строку с нужным значением PHP лимита:
php_value memory_limit 256M
Сохраняем, делаем очистку кеша и изменения должны вступить в силу.
В зависимости, от конфигурации вашего веб-сервера, какой-то метод может работать, какой-то нет.
Кто боится изменять PHP Memory Limit ручками, предлагаю специальные плагины для WordPress.
Пробуйте, экспериментируйте!
Удачи!
На самом деле очень в редких случаях нужно применять этот параметр. Но вижу, автор с увлечением про все это пишет) Дай Бог Вам сил и вдохновения!
Все зависит от задач и проектов. В сложных проектах для поддержки производительности все нужно настраивать под себя, в том числе и memory limit. Спасибо за комментарий! Подписывайтесь на обновления )