Как изменить параметры PHP (php.ini) в cPanel

Печать
  • 0

Ошибка «Allowed memory size exhausted», не загружающийся файл или импорт, который обрывается на середине, часто упираются в настройки PHP. Эти значения обычно задаются в php.ini, и в cPanel их можно поменять самостоятельно, не трогая системные файлы.

Где менять настройки

В cPanel есть два места для параметров PHP. Нужное зависит от того, где выбрана версия PHP для сайта:

  • Select PHP Version (раздел Software): если версия выбрана здесь, параметры меняются на вкладке Options той же страницы.
  • MultiPHP INI Editor (раздел Software): для доменов, версия которых задана в MultiPHP Manager.

Если не уверены, какой вариант Ваш, внесите изменение и проверьте результат способом из конца статьи. Показанное там значение и есть то, с которым реально работает сайт.

Способ 1: Select PHP Version, вкладка Options

  1. В cPanel в разделе Software откройте Select PHP Version.
  2. Перейдите на вкладку Options. Появится список директив с текущими значениями.
  3. Нажмите на нужное значение и выберите новое из списка. Изменение сохраняется сразу.

Способ 2: MultiPHP INI Editor

  1. В cPanel в разделе Software откройте MultiPHP INI Editor.
  2. На вкладке Basic Mode выберите домен (или расположение), для которого меняются настройки.
  3. Измените значения и нажмите Apply или Save, в зависимости от версии cPanel.
  4. Директивы, которых нет в списке, добавляются на вкладке Editor Mode: выберите то же расположение и впишите их, каждую с новой строки, например:
    display_errors = Off
    log_errors = On

Что меняют чаще всего

ДирективаЗа что отвечаетКогда менять
memory_limitСколько памяти может занять один скриптОшибки вида «Allowed memory size exhausted»
upload_max_filesizeМаксимальный размер загружаемого файлаНе загружается тема, большое изображение или архив
post_max_sizeОбщий объём данных, отправляемых формойВместе с upload_max_filesize, всегда не меньше её
max_execution_timeСколько секунд может выполняться скриптДолгие импорты и экспорты прерываются
max_input_timeВремя на приём данных запросаМедленная загрузка больших файлов
max_input_varsСколько полей принимается в одном запросеБольшое меню или страница настроек сохраняется не полностью
display_errorsПоказывать ли ошибки на страницеВключать ненадолго для отладки; на рабочем сайте держать выключенным
session.gc_maxlifetimeСколько секунд хранятся данные сессииПользователей слишком быстро разлогинивает

Чего лучше не делать

  • Ставить огромные значения. Большой memory_limit не добавит памяти: аккаунт всё равно ограничен ресурсами тарифа. Увеличивайте постепенно, ровно настолько, чтобы проблема ушла.
  • Оставлять post_max_size меньше upload_max_filesize. Тогда загрузка не пройдёт, даже если лимит файла выглядит достаточным.
  • Показывать ошибки посетителям. Включённый display_errors может раскрыть пути и детали сайта. Для отладки пользуйтесь журналом ошибок.
  • Проверять слишком рано. Некоторые изменения применяются через несколько минут. Если видите старое значение, подождите и обновите страницу.

Как убедиться, что настройка применилась

  1. В File Manager в папке сайта (например, public_html) создайте файл с трудно угадываемым именем, скажем test-php-7391.php, и таким содержимым:
    <?php phpinfo();
  2. Откройте его в браузере по адресу https://Ваш-домен.md/test-php-7391.php и найдите изменённую директиву в колонке Local Value.
  3. Сразу после проверки удалите файл. Страница phpinfo раскрывает сведения о сервере, которым не место в открытом доступе.

Полезные статьи

Помог ли вам данный ответ?

Нужна помощь? Позвоните нам +373 795-800-80