Увеличьте максимальное время выполнения для php

Я добавил функцию set_time_limit(0); для увеличения времени выполнения, но ее выполнение длится всего 2-3 минуты.

error_reporting(E_ALL);
error_reporting(1);
set_time_limit(0);

Я хочу найти ссылки с сайта, в котором используется длинная известь.

Любая помощь будет принята с благодарностью.

Большое спасибо.

Ответ 1

PHP файл (например, my_lengthy_script.php)

ini_set('max_execution_time', 300); //300 seconds = 5 minutes

.htaccess

<IfModule mod_php5.c>
php_value max_execution_time 300
</IfModule>

Дополнительные параметры конфигурации

<IfModule mod_php5.c>
php_value post_max_size 5M
php_value upload_max_filesize 5M
php_value memory_limit 128M
php_value max_execution_time 300
php_value max_input_time 300
php_value session.gc_maxlifetime 1200
</IfModule>

Если Wordpress, установите это в файле config.php,

define('WP_MEMORY_LIMIT', '128M');

Если drupal, сайты /default/settings.php

ini_set('memory_limit', '128M');

Если вы используете другие фреймворки,

ini_set('memory_limit', '128M');

Вы можете увеличить объем памяти Гигабайт.

ini_set('memory_limit', '3G'); // 3 Gigabytes

259200 означает: -

( 259200/(60x60 minutes) ) / 24 hours ===> 3 Days

Подробнее о моем блоге

Ответ 2

Добавьте эти строки кода в свой файл htaccess. Я надеюсь, что это решит вашу проблему.

<IfModule mod_php5.c>
php_value max_execution_time 259200
</IfModule>

Ответ 3

Ну, так как вы на общем сервере, вы ничего не можете с этим поделать. Обычно они устанавливают максимальное время выполнения, чтобы вы не могли его переопределить. Я предлагаю вам связаться с ними.

Ответ 4

ну, есть два способа изменить max_execution_time.
1. Вы можете напрямую установить его в файле php.ini.
2. Во-вторых, вы можете добавить следующую строку в свой код.

ini_set('max_execution_time', '100')

Ответ 5

Используйте mod_php7.c вместо mod_php5.c для PHP 7

пример

<IfModule mod_php7.c>
   php_value max_execution_time 500
</IfModule>

Ответ 6

Вероятно, на вашем веб-сервере установлен лимит. Некоторые браузеры/прокси также будут использовать тайм-аут. Вызов длительных процессов через HTTP-запрос просто глупо. Правильный способ решения проблемы (если вы не можете сделать обработку быстрее) - использовать HTTP-запрос для запуска обработки за пределами группы сеансов веб-сервера, а затем опросить статус через HTTP, пока не получите результирующий набор.

Ответ 7

Это старый вопрос, но если кто-то найдет его сегодня, то вероятность того, что php будет запущена через php-fpm и mod_fastcgi. В этом случае ничто здесь не поможет продлить время выполнения, так как Apache завершит соединение с процессом, который не выводит ничего за 30 секунд. Единственный способ расширить его - изменить -idle-timeout в конфигурации apache (module/site/vhost).

FastCgiExternalServer /usr/lib/cgi-bin/php7-fcgi -socket /run/php/php7.0-fpm.sock -idle-timeout 900 -pass-header Authorization

Подробнее - Увеличьте время ожидания простоя PHP-FPM

Ответ 8

Попробуйте установить более длинный max_execution_time:

<IfModule mod_php5.c>
    php_value max_execution_time 300
</IfModule>

<IfModule mod_php7.c>
    php_value max_execution_time 300
</IfModule>