워드프레스 HTTP 500 오류 해결: 원인 확인과 복구 순서
워드프레스 HTTP ERROR 500이 발생했을 때 원인을 확인하고 복구하는 순서입니다. 관리자 접속 여부, 서버 오류 로그, 플러그인·PHP 문제와 백업 복원 시 주의사항을 안내합니다.
워드프레스 HTTP 500 오류(HTTP ERROR 500)는 서버가 요청을 처리하지 못했을 때 반환하는 오류입니다. 화면의 숫자만으로 원인을 알 수는 없습니다. 발생한 주소·시각·직전 변경 사항을 기록하고, 같은 시각의 서버 오류 로그를 확인하는 것이 점검의 출발점입니다.
이 글에서는 관리자 접속 가능 여부에 따른 대응, 오류 로그 확인 방법, 원인별 조치와 복구 후 확인 순서를 안내합니다. 사이트에 방문한 이용자라면 잠시 뒤 다시 접속하거나 운영자에게 오류 화면과 발생 시각을 알려 주세요. 아래 설정 점검은 사이트 운영자를 위한 내용입니다.
- 오류가 나는 페이지 주소와 발생 시각을 기록합니다.
- 첫 화면·문제가 있는 페이지·관리자 화면 중 어디까지 열리는지 확인합니다.
- 최근 플러그인·테마·PHP 업데이트, 코드 수정, 서버 이전이 있었는지 정리합니다.
- 설정을 변경하기 전에 파일과 데이터베이스 백업, 복원 방법을 확인합니다.
결제나 신청 중 오류가 났다면 같은 작업을 반복 제출하기 전에 처리 내역부터 확인하세요. 응답에 오류가 생겨도 일부 작업은 이미 처리됐을 수 있습니다.
HTTP 500 오류의 의미와 비슷한 증상 구분하기
500 Internal Server Error는 서버 안에서 예상하지 못한 오류가 났다는 뜻의 상태 코드입니다. PHP 실행 오류, 서버 설정, 자원 제한 등 원인은 다양합니다. MDN의 HTTP 500 설명
- 502·503·504가 표시된다면: 500과 구분해 실제 번호를 기록하세요. 서버 간 통신, 일시적인 서비스 불가, 응답 시간 초과 등 확인할 범위가 달라집니다.
- ‘이 웹사이트에 치명적인 오류가 있습니다’가 표시된다면: 워드프레스 복구 모드 안내 메일이 왔는지 확인합니다.
- 페이지는 열리지만 배치나 색상에만 오류가 있다면: 워드프레스 화면 오류 점검 가이드에서 CSS와 캐시를 먼저 확인하세요.
새로고침이나 브라우저 캐시 삭제만으로 서버의 지속적인 실행 오류가 해결되지는 않습니다. 다른 브라우저에서도 같은 주소에 같은 오류가 나는지 비교한 뒤 서버 쪽 기록을 살펴보세요.
관리자 화면이 열리는지에 따라 대응하기
| 현재 상태 | 먼저 할 일 |
|---|---|
| 관리자는 열리고 특정 페이지에서만 오류 | 해당 주소와 오류가 나는 동작을 기록합니다. 페이지에서 사용하는 기능과 최근 변경 항목을 로그와 대조합니다. |
| 관리자까지 접속 불가 | 사이트 관리자 이메일의 복구 모드 안내와 호스팅 오류 로그를 확인합니다. 메일이 없으면 스팸함도 확인합니다. |
| 백업·가져오기·업로드 중에만 오류 | 실행 시각, 파일 크기, 작업 종류를 기록하고 메모리·실행 시간·저장 공간 등 관련 로그를 확인합니다. |
| 여러 사이트가 동시에 오류 | 호스팅 장애 공지와 서버 상태를 확인합니다. 공유 서버나 계정 수준의 자원 문제도 점검 대상입니다. |
워드프레스가 일부 치명적인 PHP 오류를 감지하면 관리자에게 복구 모드(Recovery Mode) 링크를 보낼 수 있습니다. 해당 모드에서는 자신의 관리자 세션에서 문제가 있는 플러그인이나 테마가 일시 정지되어 로그인과 점검이 가능해질 수 있습니다. 모든 500 오류에 적용되거나 메일이 항상 도착하는 것은 아닙니다. 워드프레스 복구 모드 공식 안내
복구 모드에서 관리자가 열린 것만으로 방문자 화면까지 복구된 것은 아닙니다. 실제 비활성화·수정 작업은 사이트 기능에 영향을 주므로 필요한 항목만 변경하고, 종료 후 비로그인 상태에서도 확인해야 합니다.
오류 로그는 어디에서 확인하나요?
먼저 호스팅 관리 화면의 오류 로그·PHP 로그·Error Log 메뉴를 찾습니다. 메뉴나 파일 위치는 호스팅 환경에 따라 다릅니다. 로그를 직접 확인할 수 없다면 아래 정보를 호스팅사에 전달하세요.
“[도메인과 오류 페이지 주소]에서 [날짜·시각·시간대]에 HTTP 500 오류가 발생했습니다. 당시 PHP와 웹 서버 오류 로그, 자원 제한 또는 서버 설정 오류 여부를 확인해 주세요. 관리자 화면은 [접속 가능/불가] 상태이고, 직전에 [변경한 항목]이 있습니다.”
wp-content/debug.log는 워드프레스 디버그 기록 설정에 따라 생성되는 파일입니다. 모든 사이트에 기본으로 존재하지는 않습니다. 기록 위치를 따로 지정한 경우도 있으며, 워드프레스 실행 전 단계의 서버 오류는 이 파일에 남지 않을 수 있습니다.
로그가 없거나 비어 있다면 기록 설정뿐 아니라 다른 저장 위치, 파일 쓰기 권한, 오류가 발생한 계층도 확인해야 합니다. 공개 주소로 로그를 찾아 노출시키기보다 호스팅 관리 화면이나 권한이 있는 파일 접근 방법으로 확인하세요.
로그의 마지막 한 줄보다 발생 시각이 중요합니다
서버에는 다른 방문, 예약 작업, 봇 요청의 오류도 함께 기록될 수 있습니다. 500 오류가 발생한 시각과 시간대, 요청 주소, 오류 유형을 맞춰 보세요. 여러 줄의 호출 기록이 이어진다면 같은 오류 묶음으로 읽습니다.
Warning이나 Deprecated 문구가 있다는 이유만으로 그것이 500 오류의 원인인 것은 아닙니다. 같은 요청에서 발생한 치명적 오류와 서버 메시지를 함께 확인해야 합니다.
추가 디버그 기록이 필요하다면
워드프레스 공식 문서는 디버그 도구를 로컬 또는 테스트 사이트에서 사용하도록 권장합니다. 운영 중인 사이트에서 오류 기록을 켜면 방문자에게 오류 내용이 보이거나 기록 파일이 밖으로 드러날 수 있어서 조심해야 합니다.
운영 서버에서 잠시 기록해야 한다면 담당자와 기록 위치·접근 제한·종료 시점을 정하세요. 화면 표시를 꺼도 로그 파일 자체의 외부 접근이 차단되는 것은 아닙니다. 기존 상수를 중복 추가하지 말고, 점검 후 임시 디버그 설정과 로그 보관 상태를 정리합니다. 워드프레스 디버깅 공식 문서
자주 보이는 오류 문구와 확인할 원인
다음 표는 로그를 읽기 위한 단서입니다. 파일명과 줄 번호는 오류가 드러난 위치이며, 근본 원인과 항상 같지는 않습니다.
| 로그의 문구 | 뜻과 다음 점검 |
|---|---|
Allowed memory size … exhausted |
PHP 작업이 허용 메모리를 소진했습니다. 당시 작업과 실제 PHP 제한을 확인하고, 과도한 사용 원인도 점검합니다. |
Maximum execution time … exceeded |
스크립트 실행이 제한 시간을 넘었습니다. 느린 처리, 반복 실행, 대량 작업 등을 살펴봅니다. |
Call to undefined function |
호출한 함수를 사용할 수 없습니다. 필요한 파일·확장 기능의 누락, 로딩 순서, 버전 호환성 등을 확인합니다. |
Cannot redeclare |
같은 함수 등이 중복 선언됐습니다. 코드의 중복 포함이나 기능 간 충돌을 확인합니다. |
Parse error / syntax error |
PHP가 코드를 해석하지 못했습니다. 최근 코드 수정, 불완전한 파일 배포, PHP 버전 호환성을 확인합니다. |
Permission denied |
파일·폴더 접근이 거부됐습니다. 소유권·권한과 서버 실행 계정을 확인합니다. |
경로에 plugins/플러그인명/이 보이면 해당 기능부터 조사할 근거는 됩니다. 하지만 그 플러그인을 호출한 테마나 다른 코드, 누락된 서버 확장 기능이 원인일 수도 있습니다. 로그와 변경 이력, 테스트 결과를 함께 판단하세요.
PHP의 화면 표시와 로그 기록은 별도 설정이며 실제 기록 위치도 서버 설정에 따라 달라집니다. PHP 오류 기록 설정 문서
원인을 좁힌 뒤 필요한 항목만 수정하기
플러그인·테마 업데이트와 관련된 경우
가능하면 테스트 사이트에서 문제를 재현하고 최근 변경한 항목부터 하나씩 확인합니다. 비교를 통한 플러그인 충돌 검사는 유효한 방법이며, 로그가 충분하지 않을 때도 도움이 됩니다. 테스트 사이트에서 항목을 하나씩 바꾸면서 오류가 다시 나는지 체크하세요.
관리자 화면까지 막혔고 최근에 바꾼 플러그인이 의심된다면, 그 플러그인을 서버 쪽에서 잠시 멈춰야 화면이 다시 열리는 경우가 많습니다. 결제·문의 같은 기능이 함께 멈출 수 있어서 혼자 손대기 어렵다면 저희에게 맡겨 주세요. 이때 해당 기능도 중단되므로 결제·문의·회원 기능과의 관계를 먼저 확인하세요.
원인을 전혀 모를 때는 플러그인을 하나씩 가려 내야 해서 시간이 걸리고, 그동안 사이트 기능이 멈출 수 있습니다. 운영 사이트에서는 여러 기능이 동시에 멈출 수 있으므로 이용자가 적은 시간과 복원 방법을 준비하세요. 플러그인 파일을 삭제할 필요는 없습니다.
재활성화하면 오류가 다시 날 수 있으므로 수정·호환성 확인 후 진행합니다. 업데이트 직후 상황은 워드프레스 업데이트 후 오류 가이드도 참고하세요.
메모리·실행 시간 제한이 확인된 경우
제한을 늘리기 전에 어떤 작업이 자원을 소모했는지 확인합니다. 대량 작업을 나누거나 오류가 있는 반복 처리를 수정해야 할 수도 있습니다. 워드프레스 쪽 설정만 바꾼다고 호스팅의 실제 PHP 제한이 늘어나지는 않습니다. 지금 걸려 있는 제한과 늘릴 수 있는 범위는 호스팅사에 먼저 물어보세요.
서버 설정·파일 권한·PHP 버전이 관련된 경우
서버 설정을 바꾼 직후라면 해당 변경을 로그와 대조합니다. 서버 설정 파일은 서버 종류마다 쓰는 방식이 달라서, 한 가지 방법이 모든 사이트에 통하지는 않습니다. 삭제하면 접근 제한이나 리디렉션 같은 기존 설정도 없어질 수 있어 먼저 백업하고 문제 규칙을 확인해야 합니다. 워드프레스 서버 설정 공식 안내
권한 문제를 급하게 풀려고 파일 권한을 한꺼번에 열거나 PHP 버전을 함부로 바꾸면 보안 구멍이 생기거나 다른 오류가 날 수 있습니다. 서버 구성과 플러그인·테마 요구 사항에 맞춰 수정합니다.
정상 시점의 백업으로 되돌리면 그 이후의 주문·문의·회원 가입·작성 글이 사라질 수 있습니다. 긴급 복구라도 현재 데이터를 보존하고 파일만 복구할지, 데이터베이스까지 복구할지 먼저 구분하세요.
복구 후 확인과 재발 방지
- 첫 화면뿐 아니라 오류가 났던 주소와 작업이 정상인지 확인합니다.
- 관리자·비로그인 방문자·모바일 환경을 비교하고 필요한 주요 기능을 점검합니다.
- 같은 치명적 오류가 다시 기록되는지, 예약 작업 시간에도 문제가 없는지 살펴봅니다.
- 임시 디버그 설정을 정리하고, 원인·변경 항목·복원 방법을 남깁니다.
주소가 열린다는 사실만으로 모든 기능이 복구된 것은 아닙니다. 문의나 결제가 있는 사이트는 준비된 테스트 방식으로 처리 결과까지 확인한 뒤 마무리합니다.
자주 묻는 질문
HTTP ERROR 500은 새로고침이나 캐시 삭제로 해결되나요?
일시적인 서버 문제라면 다시 열릴 수 있지만, PHP 치명적 오류나 서버 설정 문제는 캐시 삭제로 해결되지 않습니다. 반복해서 발생하면 시간과 주소를 기록하고 같은 시각의 서버 오류 로그를 확인하세요.
관리자 화면에도 접속할 수 없으면 어떻게 하나요?
관리자 이메일의 복구 모드 안내와 호스팅 오류 로그를 먼저 확인합니다. 최근에 바꾼 플러그인이 짐작된다면 그 이름과 바꾼 시각을 적어 두고 저희에게 알려 주세요.
PHP 메모리 제한을 높이면 500 오류가 해결되나요?
로그에 메모리 소진 오류가 확인된 경우에는 도움이 될 수 있습니다. 원인을 확인하지 않고 값을 올리면 과도한 메모리 사용 문제를 숨길 수 있고, 호스팅의 실제 상한 때문에 설정이 적용되지 않을 수도 있습니다.
백업을 복원하면 바로 해결되나요?
정상 시점의 파일과 데이터베이스 백업이 있다면 복구 방법이 될 수 있습니다. 다만 백업 이후의 주문·문의·회원·작성 글이 사라질 수 있으므로 현재 데이터를 먼저 보존하고 복원 범위를 정해야 합니다.
직접 해결하기 어렵다면 이 정보를 보내 주세요
- 사이트 주소와 오류가 난 페이지·동작
- 발생 시각과 시간대, 관리자 접속 가능 여부
- 직전 업데이트·설정 변경 내용
- 확인한 오류 문구와 같은 시각의 관련 로그 일부
- 이미 시도한 조치와 백업 보유 여부
로그 전체나 비밀번호를 공개 댓글에 올리지 마세요. 로그에 이메일·토큰·서버 경로 등 비공개 정보가 있으면 가리고, 필요한 부분만 상담 채널로 전달해 주세요.
에코스튜디오는 확인 가능한 증상과 기록을 바탕으로 점검 범위를 정리합니다. 공개 주소만으로 확인하기 어려운 오류는 호스팅 로그나 추가 접근이 필요할 수 있습니다. 작업 비용과 일정은 확인된 범위에 맞춰 안내합니다.