Как убрать Fatal error: Maximum execution time of 30 seconds?

Мягкая игрушка PHP

Изначально PHP защищает ваш сервер от скриптов, исполнение которых длится более 30 секунд. Это нужная штука, позволяющая с уверенностью говорить, что нерадивый php-разработчик не положит весь сервер за несколько секунд.

Но в некоторых случаях 30 секунд — это мало. К примеру, в CRM Клиентская база. Скрипты могут выполнятся дольше 30 секунд.


Как увеличить время выполнения скрипта на PHP?

Конфигурационный файл у PHP только один и это php.ini. Находиться он в:

  • /etc/php/7.3/apache2/php.ini — если PHP используется как модуль к Apache2;
  • /etc/php/7.3/fpm/php.ini — если используется как отдельный демон php-fpm.

Версия PHP у Вас может отличаться. У меня это PHP 7.3.

В нем есть строка:

max_execution_time = 30

Числовое значение – это и есть время в секундах, которое отведено на исполнение каждого скрипта в отдельности.

Меняем в зависимости от потребности:

max_execution_time = 3600

После этого необходимо перезапустить демон web-сервера:

# перезапускаем nginx
sudo service nginx restart
# перезапускаем Apache2
sudo service apache2 restart

P.S. Изменение этого параметра – это сугубо личное предпочтение каждого, которое всегда зависит от конкретной задачи. Не стоит менять этот параметр на боевом web-сервере в интернете, так как это точно снизит его отказоустойчивость и доступность.

Теги:

Комментарии




В качестве аватарки используется сервис - gravatar.com



IT-событие
Основание Adobe
Основание Adobe
Оглавление
  1. Как увеличить время выполнения скрипта на PHP?
  2. Комментарии