Programing

치명적인 오류 : 최대 실행 시간이 30 초를 초과했습니다

lottogame 2020. 2. 26. 07:37
반응형

치명적인 오류 : 최대 실행 시간이 30 초를 초과했습니다


온라인 소스에서 JSON 파일을 다운로드하고 루프를 통해 실행될 때이 오류가 발생합니다.

치명적인 오류 : 24 행의 C : \ wamp \ www \ temp \ fetch.php에서 최대 실행 시간이 30 초를 초과했습니다.


루프가 끝이 없을 수도 있습니다. 그렇지 않은 경우 다음과 같이 최대 실행 시간을 연장 할 수 있습니다.

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

set_time_limit(300);

시간 제한을 일시적으로 연장하는 데 사용할 수 있습니다.


저도 같은 문제를 겪고과 PARAM에 대한 값을 변경하여 그것을 해결 max_execution_timephp.ini다음과 같이 :

max_execution_time = 360      ; Maximum execution time of each script, in seconds (I CHANGED THIS VALUE)
max_input_time = 120          ; Maximum amount of time each script may spend parsing request data
;max_input_nesting_level = 64 ; Maximum input variable nesting level
memory_limit = 128M           ; Maximum amount of memory a script may consume (128MB by default)

이것이 도움이되기를 바랍니다.


위의 모든 답변은 정확하지만 경우에 따라 간단한 방법으로 피할 수 있습니다.

이 명령을 스크립트의 시작 부분에 넣으십시오.

set_time_limit(0);

WordPress 4.0으로 업그레이드하는 동안이 문제가 발생했습니다 . 기본적으로 WordPress는 최대 실행 시간을 30 초로 제한합니다.

WordPress 설치 루트 디렉토리의 .htaccess 파일에 다음 코드를 추가하여 기본값을 재정의하십시오.

php_value max_execution_time 300  //where 300 = 300 seconds = 5 minutes

php.ini 편집

이 줄을 찾으십시오.

max_execution_time

값을 300으로 변경하십시오.

max_execution_time = 300

300은 http 요청에 대해 5 분의 실행 시간을 의미합니다.


스크립트 시간이 초과되었습니다. set_time_limit () 함수를보고 실행 시간을 늘리 십시오 . 또는 더 빠르게 실행되도록 스크립트를 프로파일 링하십시오. :)


위의 모든 것이 작동하지 않으면 .htaccess스크립트가있는 디렉토리에 파일을 추가 하고이를 넣으십시오.

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

이것이 내 문제를 해결 ini_set('max_execution_time', 86400);하거나 set_time_limit(86400)내 문제를 해결하지는 않았지만 .htaccess 메소드는 그렇게했습니다.


스크립트 맨 위에 다음 줄을 추가하여 제한을 0으로 설정하여 제한을 제거 할 수 있습니다.

<?php ini_set('max_execution_time', 0); ?>

이 문제를 3 가지 방법으로 해결할 수 있습니다.

1) php.ini 파일 사용

2) .htaccess 파일 사용

3) Wp-config.php 파일 사용 (Wordpress 용)


경로를 따르십시오 /etc/php5(your php version)/apache2/php.ini.

그것을 열고 max_execution_time원하는 값을 설정하십시오 .


php.ini 파일에서 변경 한 것이 있는지 확인하십시오. 예를 들어 "extension = php_intl.dll"추가하지 않고 "국제화 확장 (Intl)"을 활성화하기 위해 "; intl.default_locale =""; intl.default_locale = en_utf8" 로 변경 한 경우 이와 동일한 오류가 발생했습니다. 따라서 비슷한 실수를 확인하는 것이 좋습니다.


whm으로 쉽게 할 수 있습니다. jusst는 whm -----> 서비스 구성 ----------> php 구성 편집기 ------- max_execution_time -----> 30 (기본 값으로 변경) 너는 원해)


PHP 스크립트 맨 위에 다음 줄을 추가하여 스크립트 실행 시간을 늘리십시오.

ini_set('max_execution_time', 120); //120 seconds = 2 minutes

PHP 스크립트 실행 시간 증가 에서 참조


확장하려면 또는을 max_execution_time사용할 수 있습니다 .ini_setset_time_limit

// Set maximum execution time to 10 seconds this way
ini_set('max_execution_time', 10);
// or this way
set_time_limit(10);

!! 그러나 두 기능을 다시 시작하면 스크립트 실행에 이미 걸리는 시간도 계산됩니다.

sleep(2);
ini_set('max_execution_time', 5);

register_shutdown_function(function(){
    var_dump(microtime(true) - $_SERVER['REQUEST_TIME_FLOAT']);
});

for(;;);

//
// var_dump outputs float(7.1981489658356)
//

따라서 스크립트를 실행할 수있는 최대 시간을 설정하려면 명령이 가장 먼저 시작되어야합니다.

이 두 기능의 차이점은

  • set_time_limit 성공 여부는 정보를 반환하지 않지만 오류에 대한 경고가 표시됩니다.
  • ini_set성공하면 오래된 값을 반환하거나 경고 / 오류없이 실패하면 false반환합니다.

WordPress 사이트에서 동일한 문제가 있습니다. .htaccess 파일에 추가 한 다음 제대로 작동합니다.

php_value max_execution_time 6000000

필자의 경우 xampp \ phpMyAdmin \ libraries \ config.default.php에서 변경했습니다.

나는 검색했다 : $cfg['ExecTimeLimit']오른쪽의 값을 변경 ...

오른쪽 값 을 '5000'과 같은 더 높은 값 으로 변경할 수 있습니다 . 작동합니다.

참고 URL : https://stackoverflow.com/questions/5164930/fatal-error-maximum-execution-time-of-30-seconds-exceeded



반응형