PHP 환경설정의 메모리 부족으로 인한, 드루팔의 에러 및 대처요령
PHP 환경설정의 메모리 부족으로 인한, 드루팔의 에러 및 대처요령을 기록해 둔다.
* 유용한 참고 - http://drupal.org/node/76156
[현상]
드루팔 모듈이 많아지면 어느 순간 이런 에러가 나타날 수 있다.
드루팔 모듈이 많아지면 어느 순간 이런 에러가 나타날 수 있다.
Fatal error: Allowed memory size of 33554432 bytes exhausted (tried to allocate 1584850 bytes)
[원인]
PHP.ini의 기본 설정 중, 메모리 최대 사용량이 드루팔에서 요구하는 용량보다 작기 때문이다.
[대처]
위 유용한 참고 출처에서 대처한 3가지 중 한가지를 사용해서 해결한다.
추천하는 방법은
1. (댓글에도 적혀 있는) PHP 소스 레벨에서 수정하는 방법이다.
sites/default 혹은 사이트명/setting.php 의 중간에... 아래 구문을 넣어볼 것.
ini_set('memory_limit', '50M');
2. 또는 .htaccess 파일에 아래와 같은 항목을 추가하는 것이다.
php_value memory_limit 50M
# PHP의 가용 메모리량을 50MB로 늘린다.
# 단, 이것은 해당 서버의 아파치에서 .htaccess 설정이 개별적으로 설정 가능한 경우에 한한다.
* 중요 ) 1번 방법을 더 추천하는 이유는, 2번 방법의 경우 드루팔 버전업을 하다 보면
코어 파일들을 덮어쓸 때 .htaccess조차 원복되는 현상이 생겨 메모리 제한이 또 생기기 때문이다.
이 글과 관련이 있나요...
- 드루팔의 CRON이 실행 타임아웃 Execute Timeout 에 완료되지 못할 경우
- PHP Notice: unserialize() [<a href='function.unserialize'>function.unserialize</a>]: Error at offset in /.../includes/bootstrap.inc 에 대한 대책
- 갑자기 모듈 설정 화면이 보이지 않고 하얗게 나온다면
- Google CSE 모듈을 이용해서 해당 사이트의 구글 검색 결과를 임베이드해보자 (2010년도 기준, AdSense이용 방식)
- REST Server 모듈을 설치하려고 하나, spyc 라이브러리의 부족으로 활성화가 되지 않는 경우.


댓글
1 comment posted만일 PHP 소스 레벨에서 수정한다면 이런 방법도 있다.
sites/default/setting.php 의 중간에... 아래 구문을 넣어볼 것.
ini_set('memory_limit', '50M');