PHP memory limit – что это и как его увеличить?

Продолжаем рубрику “Учимся вместе”, и в этой статье я расскажу – что такое 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 не панацея! Увеличивайте только в крайних случаях.

Прежде, чем я поделюсь с вами тремя способами как это сделать, дам еще немного фактов:

  1. PHPязык программирования высокого уровня, который обладает очень серьезными и широкими возможностями, например позволяет создавать веб-проекты любого уровня сложности, использовать базу данных MySQL и т.д.
  2. Существует множество версий PHP, которые содержат различные модули. Эти модули расширяют функционал веб-сервера.
  3. Интерпретатор PHP позволяет обрабатывать веб-скрипты и сценарии на сайте.
  4. Функция PHP – mail одна из самых востребованных  – помогает отправлять с вашего сервера письма, запускает рассылки.

Руководство по PHP: http://docs.php.net/manual/ru/

Клуб разработчиков PHP: https://phpclub.ru/talk/

Как увеличить PHP Memory Limit

Редактирование файла PHP.INI

Первое, что нужно сделать – узнать где у вас на хостинге лежит php.ini. Нужно выполнить не сложную манипуляцию:

  1. Создать файл с расширением .php и поместить в него строку:
    <?php
    phpinfo();
    ?>
  2. Сохранить этот файл под именем phpinfo.php и залить в корневую директорию сайта /. Можете также скачать у меня уже готовый файлик.
  3. Открыть в браузере URL-адрес: ваш_домен/phpinfo.php
  4. Откроется таблица, найти колонку 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: https://wordpress.org/plugins/tags/memory-limit/

Пробуйте, экспериментируйте!

Удачи!

Оценка:
( 2 оценки, среднее 5 из 5 )
Подписка на KRASHENININ.TECH

Получайте ежедневные обновления на почту!


Виталий Крашенинин aka KRV/ автор статьи
Основатель блога, публицист, IT-специалист
Понравилась статья? Поделись с друзьями:
KRASHENININ.TECH - блог о веб-технологиях, и не только
Оставить комментарий
avatar
500
  Подписаться  
Уведомление о