워드프레스에서 "Fatal error: Allowed memory size of 33554432 bytes exhausted…"(치명적인 오류: 허용된 메모리 크기 33554432바이트가 소진되었습니다…)와 비슷한 오류가 발생하는 경우가 있습니다. 이 경우 메모리 제한(Memory Limit) 설정값을 늘려 대응할 수 있습니다.

워드프레스 Fatal error: Allowed memory size of 33554432 bytes exhausted 오류
워드프레스 사이트에서 메모리가 부족하게 되면 "Fatal error: Allowed memory size of 268435456 bytes exhausted (tried to allocate 2039808 bytes) in /www_root/wp-includes/functions.php on line 5277"과 비슷한 에러 메시지가 표시될 수 있습니다.

실제 숫자는 사이트에 따라 다를 수 있습니다.
이 오류는 PHP 메모리 제한(Memory Limit)에 도달했을 때 발생합니다. 이 메시지는 워드프레스에서 처리하려고 시도하는 작업이 할당된 메모리 크기를 초과했음을 나타냅니다.
요즘 나오는 테마나 플러그인은 많은 메모리를 요구할 수 있습니다. 예를 들어, Elementor 페이지 빌더를 사용할 때 WP_Memory_Limit 크기가 작을 경우에 이 오류가 나타날 수 있습니다.
문제를 해결하려면 메모리 제한 크기를 늘려야 합니다. 메모리 제한 크기는 웹호스팅 서버에서 제공하는 크기 내에서 조정이 가능합니다.
PHP 메모리 제한 설정 확인하기
워드프레스에 로그인할 수 있는 경우 도구 » 사이트 건강 » 정보 탭 » 서버 섹션에서 PHP memory limit를 확인할 수 있습니다.

아바다 테마나 뉴스페이퍼 테마 등 일부 테마에서는 테마 옵션 내의 시스템 상태 페이지에서 PHP 메모리 크기를 확인할 수 있습니다. 예를 들어, Avada를 사용하는 경우 Avada » 상태 » 워드프레스 환경 섹션에 PHP 메모리 제한 등의 워드프레스 환경 설정값이 표시됩니다.

워드프레스에 로그인할 수 없는 경우에는 FTP에 접속하여 루트 폴더에 phpinfo.php 파일을 하나 만든 다음, 다음 라인을 추가합니다.
<? phpinfo(); ?>
그런 다음, example.com/phpinfo.php에 접속하여 PHP 환경 설정값을 확인할 수 있습니다.
PHP 메모리 제한 크기 변경하기
몇 가지 방법으로 Memory Limit 설정값을 변경할 수 있습니다.
1 일반적으로 wp-config.php 파일에 다음 라인을 추가하면 메모리 크기가 증가하게 됩니다.
define( 'WP_MEMORY_LIMIT', '512M' );
※ '512MB'가 아니라 '512M'임에 유의합니다. 512M로 설정해도 문제가 해결되지 않으면 1024M 등으로 변경하여 테스트해보시기 바랍니다. (일부 웹호스팅에서는 256M로 고정되어 있을 수 있습니다.)
카페24에서 Wordfence를 설치하고 멀웨어 스캔을 실행할 때 메모리 크기를 512MB로 설정했을 때 에러가 발생하여 1024MB로 상향 조정하니 에러가 발생하지 않았습니다.
wp-config.php 파일이나 .htaccess 파일을 편집하려면 FTP에 접속할 수 있어야 합니다.
2 PHP.ini 파일에 접근할 수 있는 경우 PHP.ini에서 memory_limit의 값을 증가시킵니다.
; Maximum amount of memory a script may consume (128MB)
; http://php.net/memory-limit
memory_limit = 512M
3 PHP.ini에 접근할 수 없는 경우 .htaccess 파일에 다음 라인을 추가합니다.
php_value memory_limit 512M
일부 웹호스팅에서는 이 코드를 추가하면 HTTP 500 오류가 발생하거나 사이트에 접속하지 못하는 에러가 발생하기도 합니다.
4 cPanel 컨트롤 패널을 제공하는 호스팅에서는 cPanel에 접속하여 PHP 환경값을 변경할 수 있습니다. 예를 들어, 패스트코멧(FastComet)에서 PHP 버전을 변경하고 PHP ini 설정값을 변경하는 방법을 확인할 수 있습니다.
5 위의 방법으로 문제를 해결할 수 없는 경우 웹호스팅 업체에 연락하여 도움을 요청합니다.
웹호스팅에 따라 PHP 설정값을 변경하는 방법이 다를 수 있습니다. 클라우드웨이즈를 이용하는 경우 다음 글을 참고하여 PHP 버전과 PHP 환경 설정값을 변경할 수 있습니다.
조정 가능한 범위는 해당 서버의 사양에 따라 차이가 있습니다. 1GB 램 서버의 경우 1024MB로 늘릴 수 없고 1000MB 이하 크기로 시도해볼 수 있습니다. 2GB 램 이상에서는 1024MB로 설정이 가능합니다.
웹호스팅 업체에 의한 제한
일부 공유호스팅에서는 메모리 크기를 늘리는 것을 허용하지 않을 수 있습니다. 예를 들어, 가비아 공유호스팅에서는 호스팅 당 사용할 수 있는 최대 메모리량을 256MB로 제한하고 있으며 별도 증설이 불가능합니다.
죄송하지만 사용하는 호스팅 하나 당 이용할 수 있는 최대 메모리량은 256MB로 제한되어 있으며 별도 증량이 불가한 점 양해 부탁드립니다.
플러그인 통해 불러오는 내용이 256MB 넘지 않도록 조치해주시거나 메모리량 증량이 반드시 필요한 경우 단독서버나 클라우드 서비스로 이전하여 이용하는 방법을 고려해보시기 바랍니다.
Memory Limit 크기 설정에 대한 가비아 고객센터 담당자 답변
닷홈 무료 호스팅이나 공유호스팅에서도 PHP 설정값을 변경할 수 없도록 제한할 것입니다.
메모리 제한 크기 초과로 인해 사이트 오류가 발생하고 있지만 호스팅 업체에서 메모리 제한 크기를 제한하는 경우 다른 웹호스팅 업체로 이전하는 것을 고려하시기 바랍니다. 클라우드웨이즈나 카페24 등에서는 Memory Limit 크기를 상향 조정할 수 있습니다.
[ 이 글은 2015년에 최초로 작성되었으며 최신 정보를 반영하여 2024년 5월 29일에 마지막으로 업데이트되었습니다. ]
fatal error : out of memory....라고 뜨는데 어떻게 해결하나요?
안녕하세요?
위에 방법이 설명되어 있으니 참고하시기 바랍니다.
참고로 일부 웨호스팅 서비스(예: 닷홈의 무료 웹호스팅 상품)에서는 PHP 설정을 변경할 수 없을 수 있습니다. 이 경우에는 웹호스팅 상품을 바꾸거나 다른 웹호스팅 서비스로 이전해야 합니다.
저 설명대로 하니 500 internal error가 발생하네요
닷홈 관계자분께 연락해본 결과, 정상적인 홈페이지(워드프레스, XE 등)에서 해당 제한보다 많은 양의 자원을 점유하지 않으며,
해당 문제는 워드프레스 플러그인 및 테마 등의 설정으로 인하여
비정상적인 리소스 점유가 발생할 수 있어 이에 대한 확인과 조치가 필요합니다
라고 하는데 어떤 조치를 취해야될지 모르겠습니다...ㅠㅠ
현재 메모리 크기가 얼마인지 확인이 필요하고요, 그리고 fatal error : out of memory...의 원인이 되는 플러그인 혹은 테마의 메모리 요구 사항을 확인한 후에 닷홈에 사양에 맞게 조정해줄 수 있는지 물어보아야 합니다. 닷홈의 무료 호스팅이 아니라면 메모리 크기를 상향조정해줄 것으로 생각됩니다.