Увеличьте максимальное время выполнения для 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>