치명적 오류: 최대 실행 시간 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_time
에php.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 메서드로 해결되었습니다.
우리는 이 문제를 세 가지 다른 방법으로 해결할 수 있다.
1) php.ini 파일 사용
2) .htaccess 파일 사용
3) Wp-config.php 파일 사용(Wordpress용)
스크립트 상단에 다음 행을 추가하여 제한을 0으로 설정하면 제한을 제거할 수 있습니다.
<?php ini_set('max_execution_time', '0'); ?>
길을 따라가다/etc/php5(your php version)/apache2/php.ini
.
열고 값을 설정합니다.max_execution_time
원하는 사람에게.
php.ini 파일에서 변경한 내용이 있는지 확인하십시오.예를 들어 "internationalization extension(Intl)"을 추가하지 않고 ";intl.default_intl=en_utf8"로 변경하여 "internationalization extension(Intl)"을 활성화하면 동일한 오류가 발생합니다.그래서 나는 비슷한 실수가 있는지 확인해 볼 것을 제안한다.
PHP 스크립트 상단에 다음 행을 추가하여 스크립트 실행 시간을 늘립니다.
ini_set('max_execution_time', 120); //120 seconds = 2 minutes
참조가 PHP 스크립트 실행 시간 증가에서 인용되었습니다.
를 확장하려면 , 또는 를 사용합니다.
// 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를 반환한다.
WHM으로 쉽게 할 수 있어요.할 일 :
WHM -> 서비스 설정 -> PHP 설정
에 editor-->
max_execution_time=30
(기본값 30은 원하는 값으로 변경)
WordPress 사이트에서도 같은 문제가 발생하여 .htaccess 파일을 추가하고 정상적으로 동작하고 있습니다.
php_value max_execution_time 6000000
set_time_limit($time_in_second); // 0 for unlimited time
스크립트를 장시간 실행해야 할 경우 런타임에 이 php 함수를 사용합니다.자세한 것은 이쪽.
xampp\phpMyAdmin\libraries\config.default에서 몇 가지 변경을 가했습니다.php
$cfg['ExecTimeLimit']
이치노
오른쪽 값을 '5000'과 같이 더 높은 값으로 변경할 수 있습니다.그리고 그것은 동작한다.
언급URL : https://stackoverflow.com/questions/5164930/fatal-error-maximum-execution-time-of-30-seconds-exceeded
'programing' 카테고리의 다른 글
iFrame 내에서 요소 가져오기 (0) | 2022.12.06 |
---|---|
MySQL Workbench - 쿼리 오류 문제를 진단하는 방법 (0) | 2022.12.06 |
리액트 라우터 외부 링크 (0) | 2022.12.06 |
vuex namesthed 모듈 상태에 대한 getter 및 setter를 생성하는 방법 (0) | 2022.12.06 |
MySQL 5.7.10에서 JSON 데이터 유형 열을 업데이트하는 방법 (0) | 2022.12.06 |