웹사이트 검색

WordPress: 사이트에서 심각한 오류가 발생했습니다 – 제어판에 들어갈 수 없습니다(SOLVED).


내 VPS 서버에서 WordPress의 플러그인을 업데이트한 후 사이트가 열리지 않았습니다. 그리고 제어판을 여는 것도 불가능했습니다. 모든 시도 중에 메시지가 표시되었습니다(이 기사의 머리글에서 스크린샷을 볼 수 있습니다).

사이트에 심각한 오류가 발생했습니다. 추가 지침은 수신되는 관리자 메일을 확인하십시오.

WordPress의 디버깅에 대해 자세히 알아보세요.

즉, 제어판을 통해 오류를 수정하는 것은 불가능합니다. 거기에 도달하거나 설정을 변경하지 않고 변경 사항을 롤백하지 않는 것이 불가능합니다.

언급된 이메일을 받지 못했습니다. 시험용 VPS이고 메일 서비스가 구성되어 있지 않기 때문입니다.

일반적으로 제어판 열기가 불가능하고, 우편함에 편지도 안오고, 받았다고 해도 제어판이 안열리면 어떡하지?!

그것은 교착 상태처럼 보일 것입니다. WordPress 포럼은 호스팅에서 PHP 오류 로그가 있는 위치를 찾으십시오(자신이 찾을 수 없는 경우 호스팅의 기술 지원을 요청할 수 있음). 파일 끝에 무엇이 있는지 확인하십시오. 중요한 오류는 다음과 같습니다. 치명적”으로 표시됩니다.

이 사이트의 오류 로그를 열었습니다.

tail -n 50 /var/log/httpd/site.ru-error_log

그러나 그것은 완전히 비어있는 것으로 판명되었습니다 (아마도이 호스트에 대해 무언가를 구성하지 않았을 것입니다).

그런데 Debian, Linux Mint, Ubuntu, Kali Linux 및 파생 제품의 Apache 오류 로그는 /var/log/apache2/* 파일에 저장됩니다. 그리고 Arch Linux 및 파생 제품의 Apache 로그는 /var/log/httpd/* 파일에 배치됩니다. 이것이 기본값입니다. 실제로 로그는 파일 시스템의 어느 위치에나 있을 수 있습니다. 특정 가상 호스트에 대한 설정을 확인하십시오.

WordPress 대시보드에 로그인할 수 없는 경우 수행할 작업

따라서 전략은 다음과 같습니다.

  • 업데이트 후 문제가 발생했기 때문에 업데이트를 롤백하는 기능을 찾아야 합니다.
  • WordPress 관리 영역에 대한 액세스 권한이 없으므로 파일 시스템 수준에서 변경 사항을 롤백해야 합니다.
  • 어떤 플러그인이나 테마가 업데이트되었는지 기억이 나지 않아 사이트가 작동을 멈췄습니다. 따라서 어떤 플러그인이 업데이트되었는지 확인하기 위해 폴더와 파일이 변경된 시점의 타임스탬프를 살펴보겠습니다.

따라서 기본적으로(이는 웹 서버 및 개별 가상 호스트의 설정으로 변경할 수 있음) Debian, Linux Mint, Ubuntu 및 파생 제품의 웹 사이트 파일은 /var/www/html/ 디렉토리에 저장됩니다. 그리고 Arch Linux에서는 사이트 파일이 /srv/http/ 경로를 따라 저장됩니다.

그래서 사이트가 있는 폴더로 이동합니다.

cd /srv/http/site.ru/

플러그인 파일은 wp-content/plugins/ 폴더에 있습니다. ls 명령(폴더의 내용 표시)을 -l 옵션과 함께 실행합니다. (파일 정보와 함께 파일 나열) 및 -t(변경 시간별로 목록에서 파일 정렬):

ls -lt wp-content/plugins/

그리고 내가 본 것은 다음과 같습니다.

2월 18일 오늘, 단 하나의 폴더만 변경되었는데, 바로 sitetree입니다. 해결책은 매우 간단합니다. 사이트 트리 플러그인을 제거하세요.

제어판에 액세스하지 않고 WordPress 플러그인을 제거하는 방법

wp-content/plugins 폴더에 내용을 압축 해제하거나 이 폴더에서 플러그인 파일을 제거하여 WordPress 플러그인을 설치하고 제거할 수 있습니다. 즉, rm 명령을 실행합니다.

rm -rf wp-content/plugins/sitetree/

작업(프로덕션) 서버에서 rm 명령을 사용하는 것은 위험하므로 인수에 대한 설명은 다음과 같습니다.

-f	means ignore non-existent files and arguments, don't ask anything. Delete non empty folders
-r, -R, --recursive	means recursively delete directories and their contents

그리고… 문제가 해결되었습니다. 웹사이트가 작동하고 WordPress 관리자 패널의 입구가 열려 있습니다. 유일한 변경 사항은 sitetree 플러그인이 더 이상 설치되지 않는다는 것입니다. 그러나 이것은 중요하지 않습니다. 이 플러그인은 오랜 기간 동안 업데이트가 부족한 후 이미 한 번 업데이트에 실패했습니다. 그 결과 모든 기사/사이트 트리 섹션의 링크가 사라지고 더 인기 있는 사이트에서 링크가 사라졌습니다. 이미 이 플러그인의 대안을 찾았습니다. 즉, PHP 7.4를 사용하는 내 서버에서 이 플러그인이 정확히 무엇을 좋아하지 않는지 알아낼 필요가 없습니다.

테마 업데이트 후 WordPress가 작동하지 않음

그런데 테마 업데이트로 인해 문제가 발생한 경우 다음과 같이 마지막으로 변경된 테마를 볼 수 있습니다.

ls -lt wp-content/themes/

테마 업데이트로 인해 문제가 발생한 경우 현재 활성 테마로도 폴더를 삭제할 수 있습니다. 이 경우 다음 오류와 함께 사이트 작동이 중지됩니다.

The catalog of the theme "........" does not exist.

그러나 이것은 큰 문제가 아닙니다. WordPress 대시보드에 들어가는 것은 계속 사용할 수 있으며 모양 → 테마 설정에서 새 테마를 선택하고 설치할 수 있습니다.

결론

웹 사이트 또는 웹 서버 구성 요소 업데이트로 인해 발생하는 오류는 거의 모든 것을 제거하고 다시 설치/구성해야 할 정도로 심각합니다. 사이트가 전혀 작동하지 않는다 해도 원인을 찾아 수정하면 됩니다.

그건 그렇고, Linux 사용자에게는 내가 설명한 것, 즉 ls 및 rm 명령이 가장 기본적인 것입니다. 그러나 Windows 사용자에게는 아마도 읽은 후에도 명확한 것이 없습니다. 이 명령을 어디에 입력해야 하는지도 명확하지 않습니다. 따라서 웹마스터가 Linux로 전환할 것을 권장합니다. 이렇게 하면 이 운영 체제를 더 잘 이해하는 데 도움이 됩니다.

UPD: 이메일 '사이트에서 기술적인 문제가 발생했습니다'

첫 번째 오류에 언급된 이메일을 받았습니다(다른 사이트에서 같은 플러그인을 업데이트했습니다 laugh):

버전 5.2부터 WordPress는 사이트의 플러그인 또는 테마 오류를 감지하고 유사한 메시지를 자동으로 보낼 수 있습니다.

이번에 WordPress는 플러그인 중 하나인 SiteTree에서 오류를 발견했습니다.

먼저 귀하의 웹사이트(https:/site.ru/)로 이동하여 눈에 보이는 모든 문제를 확인하십시오. 그런 다음 오류가 발생한 페이지(https://site.ru/wp-admin/)로 이동하여 눈에 보이는 문제를 확인합니다.

이 문제를 더 진단하려면 호스팅 기술 지원에 문의하십시오.

가장 중요한 것은 이 게시물이 문제를 일으킨 플러그인을 나타냅니다. 관리자 패널에 대한 액세스 권한이 있으면 삭제하십시오.

그러나 내 상황을 설명했듯이 관리자 패널에 대한 액세스 권한이 없을 수 있으므로 두 번째 부분이 특히 흥미로울 수 있습니다.

사이트가 손상되어 콘솔에 정상적으로 로그인할 수 없는 경우 이제 특별 복구 모드를 사용하여 추가 작업을 위해 콘솔에 안전하게 로그인할 수 있습니다.

https://site.ru/wp-login.php?action=enter_recovery_mode&rm_token=Cc24PdWJ5chCGvpGLGZuSG&rm_key=cx647dVHksN3m4Gk64FBZP

보안상의 이유로 이 링크는 1일 후에 만료됩니다. 그러나 이 시간 이후에도 오류가 다시 발생하면 새 링크가 전송되므로 걱정하지 마십시오.

문제를 해결하려면 다음 정보가 필요합니다.

워드프레스 버전 5.3.2

현재 테마: Asteroid(버전 1.2.8)

문제 플러그인: SiteTree(버전 2.1)

PHP 버전 7.2.23

즉, 보낸 링크의 도움으로 깨진 WordPress에 들어갈 기회조차 있습니다.