본문으로 건너뛰기

워드프레스 에러 내용을 어떻게 확인하나요?

💡 요약 정리

  • 화면에 바로 보이지 않는 500 에러 등은 원인 확인 절차가 필요합니다.
  • wp-config.php에서 WP_DEBUG를 활성화해 브라우저/로그로 에러를 확인합니다.
  • 로그는 기본적으로 /wp-content/debug.log에 남기거나 원하는 경로로 지정할 수 있습니다.
  • 운영 중에는 WP_DEBUG_DISPLAY를 false로 두어 화면 출력 없이 로그만 남기는 것을 권장합니다.
  • .htaccess에서도 PHP 에러 표시/로그를 활성화할 수 있습니다. 단, 설정 오류 시 500 오류가 발생할 수 있습니다.

워드프레스 내부 소스 문제 또는 서버 설정 영향으로 에러가 발생했지만, 브라우저에서 직접 확인이 어려울 수 있습니다. 아래 방법으로 원인을 확인해 보세요.

워드프레스 에러 확인 필요 상황 안내 이미지
  • 에러 원인 확인이 필요한 대표 상황 예시 화면입니다.

1. WP_DEBUG 모드 사용 방법

  1. FTP / SSH 프로토콜로 서버에 접속합니다.

    • FTP는 파일을 서버에 올리고 내려받는 방법(프로그램)입니다.
    • SSH는 명령어로 서버에 접속하는 보안 접속 방식입니다.
  2. 편집기로 전역 설정 파일인 wp-config.php 파일을 엽니다.

    # vi wp-config.php
    
  3. WP_DEBUG 항목을 활성화합니다.

    ## edit wp-config.php
    define( 'WP_DEBUG', false );
    >
    define( 'WP_DEBUG', true );
    
  4. 저장 후 브라우저로 에러 내용을 확인합니다.

    • 사용 중인 테마의 functions.php 파일에 PHP 구문 오류가 있음을 확인할 수 있습니다.
    WP_DEBUG 활성화 후 브라우저에서 확인되는 PHP 오류 메시지 예시
    • 예: 테마 functions.php에서 발생한 구문 오류 메시지 예시입니다.
  5. 확인된 문제점을 수정한 후, 홈페이지 접근이 정상인지 다시 접속해 봅니다.

참고 링크:

2. WP_DEBUG 모드의 옵션 설정

중요: WP_DEBUG 관련 옵션은 반드시 wp-config.php의 define('WP_DEBUG', ...) 설정 바로 아래에 추가해야 동작합니다.

2.1 에러 로그 남기기

  1. wp-config.php 파일의 WP_DEBUG 설정 밑에 값을 추가합니다.
define('WP_DEBUG_LOG', true);
  1. 브라우저에서 에러를 재현하면 /wp-content/debug.log 경로로 에러가 로깅됩니다.
# cat wp-content/debug.log 
[17-Apr-2022 07:55:09] PHP Parse error: syntax error, unexpected 'asdasdasasasd' (T_STRING) in /USERID/www/wp-content/themes/twentytwentytwo/functions.php on line 152
[17-Apr-2022 07:55:11] PHP Parse error: syntax error, unexpected 'asdasdasasasd' (T_STRING) in /USERID/www/wp-content/themes/twentytwentytwo/functions.php on line 15
  1. true 대신 경로/파일명을 입력하면 해당 파일명으로 로깅됩니다.
## USERID 계정의 최상단에 error.log파일로 로깅
define('WP_DEBUG_LOG', 'USERID/error.log' );

2.2 WP_DEBUG 모드에서 에러 출력 안하기

  • 운영 중인 사이트에서 화면 출력 없이 로그 파일로만 확인하려면 아래 설정을 추가합니다.
define( 'WP_DEBUG_DISPLAY', false )
추가 디버깅 플러그인 안내:

3. .htaccess 파일을 통해 PHP DISPLAY ERROR 활성화하기

안내: WP_DEBUG 설정 대신 .htaccess를 통해서도 PHP 에러 표시/로그를 활성화할 수 있습니다. 카페24 서버는 기본적으로 PHP 에러가 브라우저에 직접 출력되지 않도록 설정되어 있습니다. 최상단 .htaccess 파일에 아래 설정을 추가하면 WP_DEBUG와 유사한 효과를 얻을 수 있습니다.

  1. FTP / SSH로 서버에 접속합니다.

  2. www 폴더와 같은 위치에 있는 .htaccess 파일을 내려받아 메모장으로 열고, 3번 값을 추가 후 저장하여 업로드합니다.

    • SSH 접속 시에는 vi 편집기로 열어 추가 후 저장합니다.
  3. 설정 값을 추가합니다.

    • 권장 위치: 최상단 .htaccess 파일의 맨 아래
## 최상단의 .htaccess파일 맨 아래에 해당 값을 추가해주시기 바랍니다.
php_value error_reporting 6135          # 어떤 에러를 보고할지 결정합니다. 6135는 대부분의 에러 유형을 포함합니다.
php_flag display_errors on              # 에러 메시지를 브라우저에 표시할지 여부를 설정합니다. 개발 시 on으로 설정.
php_flag log_errors on                  # 에러를 로그 파일에 기록할지 여부를 설정합니다. 문제 추적을 위해 on으로 설정.
php_value error_log /home/hosting_users/아이디/php_error.log  # 에러 로그 파일의 경로를 지정합니다. /아이디/는 실제 고객님의 아이디로 작성해 주시기 바랍니다.

## php_error.log 파일을 통해 로그 확인
## - FTP로 접속 후 새로 고침했을 때 파일이 보이면 내려받아 확인합니다.
## - SSH 접속 시 아래 명령으로 확인합니다.
# cat php_error.log
[17-Apr-2022 17:33:36] PHP Parse error: syntax error, unexpected 'aaaaaa' (T_STRING) in /USERID/www/info.php on line 2
[17-Apr-2022 17:37:08] PHP Parse error: syntax error, unexpected 'aaaaaa' (T_STRING) in /USERID/www/info.php on line 2

주의: .htaccess에 구문 오류나 허용되지 않는 설정을 추가하면 Internal Server Error(500)가 발생할 수 있습니다. 수정 후에는 반드시 브라우저로 서비스 정상 여부를 확인하세요.