Если я делаю set_time_limit(50)
или ini_set('max_execution_time',50)
, тогда, когда я echo ini_get('max_execution_time')
на моем localhost, я получаю 50
, но когда я делаю это на другом сервере, он перекликается со значением по умолчанию 30
и полностью игнорирует мой запрос, Почему это?
Ini_set, set_time_limit, (max_execution_time) - не работает
Ответ 1
Вы не можете изменить этот параметр с помощью ini_set() при работе в безопасном режиме. Единственным обходным решением является отключить безопасный режим или путем изменения времени limit в php.ini.
- Руководство по PHP, Конфигурация времени выполнения, описание max_execution_time
Многие хосты работают в безопасном режиме. Другой сервер, скорее всего, один из них.
Изменить: это же ограничение существует на set_time_limit
:
Эта функция не действует, когда PHP работает в безопасном режиме. Здесь нет обходной путь, отличный от выключения режима или изменения временного php.ini.
- руководство по PHP, set_time_limit
страница
Ответ 2
Позволяет ли GoDaddy редактировать удаленный файл PHP.INI или (достигая той же функции) установить эти параметры во время выполнения? Многие ограничительные хосты (и я не знаю об этом GoDaddy так или иначе) не позволят вам futz с параметрами PHP либо через конфигурационный файл, либо во время выполнения, как это было в WAMP. Может быть, хотя вы все еще вызываете эту функцию, она не применяется.
Используйте
echo 'Time Limit = ' . ini_get('max_execution_time') .
В руководстве говорится, что если он вообще установлен в PHP.INI, это переопределит это время выполнения. Руководство по PHP на set_time_limit
Ответ 3
Вы можете изменить max_execution_time.
Загрузите 1 строку (max_execution_time = 600) php5.ini в корневую папку (где находится php.ini).