맛집 여행 캠핑 일상 생활

PHP Allowed memory size 에러 본문

LAMP

PHP Allowed memory size 에러

영은파더♥ 2016. 3. 8. 10:11

Fatal error: Allowed memory size of 134217728 bytes exhausted 에러 발생시 대응 방법


평소에는 별 문제 없다가 처리해야할 데이터가 쌓이면 생길 수 있는 에러이다.

물론 잘 못된 코딩으로도 문제가 생길 수도 있다.


우선 memory_limit 값이 얼마인지 확인을 해보자. 여러가지 방법이 있다.


1. /etc/php.ini 파일에서 확인

# cat /etc/php.ini | grep "memory_limit"

따로 설정을 건들지 않았다면 디폴트 값인 128M 로 나올 것이다.


2. ini_get 함수로 확인

echo ini_get('memory_limit');


3. phpinfo 함수에서 확인

phpinfo();

DirectiveLocal ValueMaster Value
.........
memory_limit512M128M


그리고 해당 PHP 실행시 사용되는 메모리량을 체크해보자.

echo memory_get_usage(); // 현재 메모리 사용량

echo memory_get_peak_usage(); // 피크 메모리 사용량

위의 코드를 소스에 넣어서 메모리 사용량을 확인


설정된 메모리 제한 값과 사용되는 메모리 사용량을 체크를 한 뒤에 적절하게 메모리 제한 설정을 바꾸면 된다.


▶ 소스에서 메모리 제한 설정

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

위에서 체크한 메모리 사용량 보다 좀 더 많이 잡아주자.


▶ 소스에서 메모리 제한 해제

ini_set('memory_limit',-1);

메모리 제한을 풀어준다.


▶ php.ini 설정에서 메모리 제한 설정

memory_limit = 256M

php.ini 수정 후에는 아파치 재시작(service httpd restart)을 해주어야 한다.



'LAMP' 카테고리의 다른 글

아파치2 트래픽 제어모듈  (1) 2016.03.14
리눅스 카운트 명령어 wc  (0) 2016.03.08
외부 사이트 이미지 핫링크 차단  (0) 2016.03.07
PHP 파일 move 함수  (0) 2016.03.04
특정 DDNS 도메인주소 sshd 접근허용하기  (0) 2016.03.03
Trackback : | Comments :