워드프레스에서 500 내부 서버 오류 (Internal Server Error) 수정하는 방법

500 내부 서버 오류 (Internal Server Error)

워드프레스 블로그 등 사이트를 운영하다 보면 다양한 오류가 발생할 수 있습니다. 500 Internal Server Error(내부 서버 오류)도 그 중 하나인데요, 이 오류는 웹사이트 서버에 문제가 있지만 정확히 문제가 무엇인지를 서버에서 특정할 수 없을 때 발생하는 매우 일반적인 HTTP 상태 코드라고 합니다.  이 에러는 다음 형태로 브라우저에 표시될 수 있습니다.

  • "500 Internal Server Error"
  • "HTTP 500 - Internal Server Error"
  • "Temporary Error (500)"
  • "Internal Server Error"
  • "HTTP 500 Internal Error"
  • "500 Error"
  • "HTTP Error 500"
  • "500. That's an error"

위에서 언급했듯이 이 Internal Server Error는 일반적으로 문제가 있음을 나타내는 오류 메시지입니다. 이 문제를 수정하기 위해 여러 가지 방법을 시도해볼 수 있습니다.

  • F5를 눌러 웹 페이지를 새로 고침합니다.
  • 브라우저의 캐시를 삭제합니다.
  • 브라우저의 쿠키를 삭제합니다.
  • 나중에 다시 접속해봅니다.

저는 Internal Server Error 500이 발생하여 웹호스팅 기술팀에 문의해보니 사용자측에서 무엇인가를 잘못했다고 하면서 .htaccess를 수정해보라고 하더군요. 그래서 이전 백업 파일에 있던 .htaccess 파일을 웹호스팅 서버의 루트 디렉터리에 복사하여 쉽게 문제를 해결할 수 있었습니다.

500 서버 내부 오류 (Internal Server Error) 화면

워드프레스에서 500 서버 내부 오류가 발생할 경우 해결 방법

워드프레스에서 500 서버 내부 오류 (Internal Server Error)는 .htaccess 파일이 손상되었거나 PHP 메모리 제한 때문에 발생할 수 있으니 먼저 이 부분을 체크해보는 것이 좋습니다.

.htaccess 파일 손상

.htaccess 파일이 손상되었는지 확인하는 방법은 FTP로 접속하여 이 파일의 이름을 다른 이름으로 저장하도록 합니다(예: .htaccess_old). 그런 다음 사이트를 다시 로드하여 서버 내부 에러 (Internal Server Error가 발생하는지 확인합니다. 문제가 해결되면 .htaccess 파일 손상으로 인해 문제가 발생했음을 알 수 있습니다. 그러면 설정 » 고유주소로 이동하여 "변경 사항 저장" 버튼을 클릭하도록 합니다. 그러면 적절한 Rewrite 규칙으로 새로운 .htaccess 파일이 생성되어 404 오류가 발생하지 않습니다.

이 작업을 위해서는 FTP에 접속할 수 있어야 합니다. 파일질라(FileZilla)를 설치하여 FTP/SFTP에 접속하는 방법을 다음 글에서 참고해보세요.

PHP 메모리 부족

PHP 메모리 제한으로 인한 문제는 여기를 참고해보시기 바랍니다.

참고로 PHP 설정값을 확인하는 방법은 phpinfo() 함수를 사용하면 됩니다. FTP로 접속하여 루트에 info.php(혹은 임의의 이름) 파일을 하나 만든 다음, 다음 내용은 붙여넣도록 합니다.

<? phpinfo(); ?>

그런 다음, http://www.yoursite.com/info.php를 브라우저 주소창에 입력하면 PHP 설정값을 볼 수 있습니다. 다음 동영상을 참고해보세요.

플러그인 충돌 문제

플러그인 문제로 서버 내부 오류가 발생할 수 있습니다. FTP에 접속하여 /wp-content/plugins/ 폴더를 다른 이름으로 변경(예를 들어, plugins 폴더 이름을 plugins_old로 일시적으로 변경)했을 때 문제가 해결되면 플러그인이 문제의 원인입니다. 플러그인을 하나씩 비활성화하면서 문제를 일으키는 워드프레스 플러그인을 찾아서 제거하거나 다른 유사한 기능의 플러그인으로 대체하여 문제를 해결할 수 있습니다.

플러그인을 비활성화하는 자세한 방법은 "초보자를 위한 워드프레스 문제 해결 가이드"의 "모든 플러그인 비활성화하기" 부분을 참고해보시기 바랍니다.

엘리멘터 페이지 빌더에서 500 에러가 발생하는 경우

Elmentor 페이지 빌더를 사용할 때 500 내부 서버 오류가 발생하는 경우가 있습니다. 이 경우 보통 PHP 메모리 크기를 높이면 문제가 해결될 것입니다.

문제가 해결되지 않는 경우...

위의 조치에도 문제가 해결되지 않는 경우 이 페이지의 양식을 통해 서비스를 요청(유료)하실 수 있습니다.

참고:


8개 댓글

  1. 안녕하세요
    홈페이지는 접속이되는데 엘리멘토편집후 업데이트시 500에러가 뜹니다
    디버그활성화 해서 보니
    Notice: Constant WP_POST_REVISIONS already defined in /buhmwoo/www/wp-config.php on line 88 Notice: Constant EMPTY_TRASH_DAYS already defined in /buhmwoo/www/wp-config.php on line 91
    이런에러가 뜨는데 커뮤니티에도 물어보니 세팅문제이거나 메모리를 확인해 보라고 하더군요.. 세팅이란건 어디서 확인하고 어떻게 편집해야 하나요..?

    1. 안녕하세요. 엘리멘토 페이지 빌더를 사용할 경우 다양한 오류가 발생하는 것 같습니다.

      엘리멘터 페이지 빌더를 제외한 모든 플러그인을 비활성화해보시겠어요?

      그리고 메모리 크기도 확인해보시기 바랍니다.

      서버를 직접 세팅한 경우에는 서버 세팅 문제일 수도 있습니다. 블루호스트 등 해외호스팅을 이용하는 경우에는 라이브챗으로 문의해보셔도 좋을 듯 합니다. 워드프레스 문제는 자체적으로 해결해야 할 수도 있지만, 고객센터에 문의하면 문제의 원인을 파악하는 데 도움이 되는 경우가 있습니다.

      1. 감사합니다 비활성후에 플러그인 하나씩 켜다보니 yoast seo 플러그인과 충돌이 일어나네요...

      2. 엘리멘터 페이지 빌더와 Yoast SEO가 메모리를 많이 차지하여 메모리 부족으로 인해 이런 문제가 나타나는 아닐까요?

        Elementor와 Yoast SEO 모두 많이 사용되는 플러그인이기 때문에 최신 버전에서는 충돌이 발생하지 않을 것 같습니다. 만약 충돌이 발생한다면 사용자들의 충돌 보고가 있었을 것이고, 그러면 패치가 나왔을 것 네요.

  2. 500 문제를 겪고 있었는데, 여기에 적힌 것처럼 .htaccess를 백업 후 지우고 접속하니 404 오류가 생기더군요. 그리고 워드프레스 어드민 페이지로 접속해 설정의 고유주소에서 변경사항 저장하니 문제가 해결되었네요. 덕분에 이제 홈페이지가 잘 작동합니다. 감사합니다.

  3. 위의 방법으로 문제가 해결되지 않으면 모든 플러그인을 비활성화한 후에 하나씩 활성화하면서 문제를 해결해 나가야 합니다.

    만약에 관리자 페이지에 접속하지 못하고 있다면 DB에서 모든 워드프레스 플러그인을 비활성화활 수 있습니다.

    phpMyAdmin에 접속하여 다음 쿼리를 실행합니다.

    UPDATE wp_options SET option_value = '' WHERE option_name = 'active_plugins';

    (참고: How to disable all WordPress plugins directly from the database?)

    1. 며칠 전에 500에러가 발생해서 골치아팠었는데 이 쿼리문으로 해결했습니다. 원인은 새로 설치한 테마에서 이상이 생긴 것 같습니다. 감사합니다!

댓글 남기기

* 이메일 주소는 공개되지 않습니다.