WordPress 사이트에서 PHP 오류를 디버깅하는 방법은 무엇입니까?

WordPress는 오늘날 시장에서 가장 인기 있는 콘텐츠 관리 시스템(CMS) 중 하나입니다.PHP를 백본으로 사용하여 다양한 개발 언어를 기반으로 구축되었습니다.사용자가 WordPress 사이트를 방문할 때마다 PHP 코드는 서버(Apache 또는 Nginx)에 설치된 PHP 모듈에 의해 컴파일됩니다.이것은 본질적으로 사용자 요청을 처리하는 동안 많은 PHP 오류가 발생할 수 있음을 의미합니다.그렇다면 PHP 코드에 문제가 있는 것입니다.

따라서 솔루션을 찾기 전에 이러한 PHP 오류를 확인하는 방법에 대한 기본 사항을 이해해야 합니다.이 기사에서는 PHP 오류를 디버그하고 WordPress 사이트에서 오류 로깅을 활성화하는 방법을 설명합니다.

WordPress의 PHP 오류

PHP 오류는 웹사이트를 손상시키는 경고 또는 치명적인 오류일 수 있습니다.이러한 문제는 다음과 같은 여러 가지 이유로 인해 발생할 수 있습니다.

  • 문법에서 세미콜론 생략
  • 잘못된 변수 호출
  • 다른 플러그인 또는 서버 매개변수와 충돌
  • 최신 PHP 버전과 호환되지 않는 플러그인 또는 테마

브라우저 프런트 엔드 또는 관리자 패널에 오류가 표시되더라도 당황하지 마십시오.핵심 WordPress, PHP 버전, 테마 및 플러그인을 지속적으로 업데이트해야 하므로 호환성 및 기타 이유로 인해 오류가 발생하는 것이 일반적입니다.

PHP 오류를 모니터링하는 이유는 무엇입니까?

사이트에서 PHP 오류를 주시하는 것은 크게 두 가지 면에서 중요합니다.

  • 보안 - PHP 오류의 정보는 웹사이트를 악의적인 공격에 노출시킬 수 있습니다.따라서 버그를 이해하고 수정하는 것은 안전한 웹사이트를 유지하기 위한 필수 작업입니다.
  • 최적화 – PHP 오류는 웹사이트 속도를 늦출 수 있으며 이러한 문제가 눈에 띄지 않으면 성능이 느려지고 대역폭이 낭비될 수 있습니다.

많은 설치에서 기본적으로 이러한 문제에 대한 오류 알림을 제공하지 않지만 PHP 문제는 종종 경고 없이 예기치 않게 발생합니다.웹사이트를 조금만 수정해도 서버 설정, 데이터베이스 설정 또는 WordPress 파일에 영향을 줄 수 있습니다.

귀하의 사이트가 표면적으로는 잘 작동하는 것처럼 보이더라도 즉시 해결해야 하는 눈에 띄지 않는 PHP 문제가 발생할 수 있다는 사실이 남아 있습니다.이 때문에 WordPress 관리자는 PHP 오류에 세심한 주의를 기울여야 합니다.

WordPress에서 PHP 오류 디버그

이 기사에서는 두 가지 방법을 사용하여 WordPress에서 PHP 오류를 디버그하는 방법을 살펴봅니다.

  1. 코드를 사용하여 PHP 오류를 수동으로 디버그합니다.
  2. 플러그인을 사용하여 PHP 오류를 디버그하십시오.

1. 코드를 사용하여 수동으로 PHP 오류 디버그

이 방법은 개발자이거나 한두 가지 프로그래밍 언어를 잘 알고 있으면 훨씬 쉽습니다.몇 줄의 코드를 작성할 수 있기 때문에 가장 빠르지는 않을 수도 있지만, 그렇게 해도 더 재미있습니다.이 특정 게시물에서는 사이트가 LAMPP에서 로컬로 호스팅되기 때문에 Visual Studio Code에서 코드를 편집합니다.사이트가 프로덕션 상태인 경우 파일 관리자 응용 프로그램이나 FTP를 사용하여 코드를 편집할 수 있습니다.

관련 질문  "Overwatch"에서 크로스 게임을 하는 방법은 무엇입니까?

세 가지 주요 PHP 상수를 살펴보겠습니다.

WP_DEBUG 디버그 오류 활성화
WP_DEBUG_DISPLAY 브라우저 프론트엔드에 오류 표시
WP_DEBUG_LOG 로그 파일에서 오류 로깅 활성화

WP_DEBUG 및 WP_DEBUG_DISPLAY

아래 이미지와 같이 테스트 사이트에서 이제 WordPress 사이트에 PHP 오류가 표시되지 않습니다.기본적으로 WordPress는 WP_DEBUG 매개변수를 "false"로 설정하여 브라우저에 오류가 표시되는 것을 방지하기 때문입니다.

오류가 표시되지 않음
오류가 표시되지 않음

WordPress 디버깅을 true로 설정하려면 사이트의 루트 설치 폴더로 이동하여 wp-config.php 파일을 찾으십시오.파일을 편집하고 다음 줄이 포함되어 있는지 확인합니다.

define( 'WP_DEBUG', false );

아래 이미지와 같아야 합니다.

WordPress에서 디버깅 활성화
WordPress에서 디버깅 활성화

줄이 있으면 WP_DEBUG 값을 true로 변경하십시오.그렇지 않으면 WP_DEBUG 값이 true인 새 행을 삽입할 수 있습니다.또한 브라우저에서 PHP 오류를 표시할 수 있도록 다음 줄을 추가합니다.

define( 'WP_DEBUG_DISPLAY', true );

이 두 매개변수가 활성화되면 아래 이미지와 같이 표시되어야 합니다.

오류 표시 활성화
오류 표시 활성화

파일을 저장하여 변경 사항을 적용하고 서버에 다시 업로드하십시오.이제 웹 사이트를 다시 로드하면 화면에 표시된 오류를 볼 수 있습니다.보시다시피, 이것은 향후 PHP 버전에서 오류를 일으킬 수 있는 주제에 구문 문제가 있다는 경고 메시지입니다.

일부 PHP 오류는 localhost 환경에 나타나며 라이브 사이트에는 적용되지 않습니다.또한 wp-config.php 파일의 "/* That's it, stop edit!" 바로 앞에 코드를 추가해야 합니다.행복한 출판.*/".

브라우저에 사이트 PHP 오류가 표시됨
브라우저에 사이트 PHP 오류가 표시됨

불행히도 이러한 오류는 덜 전문적인 브라우저에서 나타납니다.또한 일부 버그는 웹사이트에 존재하는 취약점 및 보안 허점을 드러낼 수 있습니다.확실한 해결책은 이러한 모든 오류를 덤프할 로그 파일을 만드는 것입니다.

관련 질문  삭제되거나 손상된 파일을 복구하는 방법(2022년 Windows 및 Android)

그러나 먼저 아래 이미지와 같이 WP_DEBUG_DISPLAY 값을 편집하여 오류 표시를 끄는 것을 기억하십시오.오류를 기록할 수 있도록 WP_DEBUG 값을 true로 두십시오.

오류 표시 비활성화
오류 표시 비활성화

WP_DEBUG_LOG를 사용하여 오류 기록

다음은 WordPress 오류 로그 파일을 생성할 수 있는 몇 가지 상황입니다.

  • 전체 웹사이트가 다운되었습니다
  • 웹사이트를 열려고 할 때 빈 화면을 확인하십시오
  • 웹사이트 성능 문제
  • HTTP 상태 코드 401, 404 또는 500 경고
  • 플러그인이나 테마가 제대로 작동하지 않는 경우.문제에 대한 자세한 정보를 얻기 위해 오류 로그를 생성할 수도 있습니다.

WordPress 오류를 로그 파일에 덤프하려면 wp-config.php 파일을 열고 다음 행을 찾으십시오.

define( 'WP_DEBUG_LOG', true );

존재하지 않는 경우 새 행을 삽입할 수 있습니다.이 줄도 주석 처리되는 경우가 있는데, 아래 그림과 같이 주석을 제거하고 WP_DEBUG_LOG 값을 true로 설정해야 합니다.

디버그 오류 로깅 사용
디버그 오류 로깅 사용

파일을 저장하고 서버에 다시 업로드하십시오.이제 브라우저에서 웹사이트를 새로고침하세요.WordPress는 wp-content 디렉토리에 debug.log라는 로그 파일을 생성하여 사이트의 모든 PHP 오류를 덤프합니다.

디버그 오류 로그 보기
디버그 오류 로그 보기

파일을 열면 웹 사이트에 표시된 모든 오류가 포함되어 있음을 알 수 있습니다.

사이트 오류 로그
사이트 오류 로그

이것은 라이브 환경에서 작업하고 사용자가 화면에서 오류를 보는 것을 원하지 않을 때 특히 유용할 수 있습니다.그런 다음 실제 사용자에게 영향을 주지 않고 백그라운드에서 이러한 오류를 확인하고 수정할 수 있습니다.

2. 플러그인으로 PHP 오류 디버그

위의 방법은 간단하지만 wp-config.php를 편집하려면 호스팅 계정에서 서버에 액세스하거나 FTP를 사용하여 원격으로 서버에 액세스해야 합니다.다행히 WordPress에는 PHP 오류를 디버그하는 데 사용할 수 있는 다양한 유형의 플러그인이 있습니다.여기에서는 다음 두 가지 플러그인에 대해 설명합니다.

  1. WP 디버그 플러그인
  2. 쿼리 모니터 플러그인

WP 디버깅 플러그인으로 PHP 오류 디버그

WP 디버깅플러그인은 무료입니다WordPress 디버그 모드를 시작하고 오류 로깅을 활성화하는 WordPress 플러그인.활성화되면 이 플러그인은 wp-config.php에 디버그 상수를 설정하고 비활성화되면 제거합니다.문제가 있으면 PHP 예외가 발생합니다.이러한 상수에는 다음이 포함됩니다.

define( 'WP_DEBUG'; true );define( 'WP_DEBUG_LOG'; true );define( 'SCRIPT_DEBUG'; true );define( 'SAVEQUERIES'; true );

플러그인이 비활성화되면 기존 상수의 상태를 복원하기 위해 모든 노력을 기울입니다.그러나 플러그인을 다시 활성화하면 기본 설정과 저장된 모든 설정이 복원됩니다.플러그인에는 디버그 상수를 구성할 수 있는 디버그 섹션도 있습니다.시작;

  • WordPress 대시보드로 이동하여 도구 메뉴를 클릭합니다.
  • WP 디버그 하위 메뉴를 클릭합니다.
  • 아래로 스크롤하여 사이트에 적용할 디버그 상수를 선택합니다.
  • 변경 사항 저장 버튼을 클릭하여 아래 이미지와 같이 변경 사항을 적용합니다.
WP 디버그 플러그인 설정
WP 디버그 플러그인 설정

쿼리 모니터 플러그인으로 PHP 오류 디버그

쿼리 모니터웹 관리자가 프런트 엔드 및 백 엔드 페이지 쿼리를 분석하는 데 도움이 되는 무료 WordPress 플러그인입니다.또한 많은 용도 중 중요한 PHP 오류에 대해 경고합니다.설치 및 활성화되면 상단 관리 표시줄에 새 항목이 표시됩니다.심각한(PHP) 문제를 식별하면 도구 모음이 아래 이미지와 같이 빨간색으로 표시됩니다.

쿼리 모니터 상단 표시줄
쿼리 모니터 상단 표시줄

이 도구 모음에는 WordPress 사이트를 관리하기 위한 여러 옵션이 있는 드롭다운 메뉴가 있습니다.그러나 이 기사에서는 PHP 오류에만 초점을 맞출 것입니다.새로 도입된 쿼리 모니터 도구 모음 위로 마우스를 가져간 다음 PHP 오류를 클릭합니다.그러면 아래 이미지와 같이 WordPress 사이트의 모든 PHP 오류를 보여주는 창이 열립니다.

쿼리 모니터 오류
쿼리 모니터 오류

또한 로그인하지 않았거나 다른 사용자로 로그인했을 때 쿼리 모니터 출력을 볼 수 있도록 하는 인증 쿠키를 설정할 수 있습니다.이렇게 하려면 아래 단계를 따르세요.

  • WordPress 대시보드의 "플러그인" 섹션으로 이동합니다.
  • Query Monitor 플러그인 아래의 "설정" 옵션을 클릭하십시오.
  • 관리자 패널에 개발자 콘솔 창이 나타납니다.
  • "인증 쿠키 설정"을 클릭하십시오.
인증 쿠키 설정
인증 쿠키 설정

결론

이 문서에서는 WordPress 사이트에서 PHP 오류를 디버그하는 데 사용할 수 있는 다양한 방법을 제공합니다.프로그래밍에 능숙하다면 수동으로 WordPress 코드와 직접 상호 작용해야 합니다.그러나 파일을 편집할 때 더 이상 오류가 발생하지 않도록 주의하십시오.이러한 플러그인은 빠르고 직접적인 접근 방식을 원하는 경우에 유용합니다.

이 게시물 공유

코멘트 남기기