wordpress An error occurred: 플러그인 라이선스 확인 실패 원인과 알림 삭제

공정위 광고 문구 Ver 3.1
공정위 광고 문구 Ver 3.2(모바일 전용)

wordpress An error occurred, please try again. 알림은 프리미엄 플러그인이 라이선스 서버에 확인을 요청했다가 정상 응답을 받지 못했을 때 관리자 화면 위에 표시하는 오류 알림입니다. 이 알림이 뜬 서버에서 문구로 플러그인을 찾고 같은 플러그인으로 라이선스 서버 응답을 바꿔 재현한 결과, 서버 복구 뒤에도 1시간 남는 알림은 재시도 대기 값을 삭제해 해결하게 되었습니다.

Essential Blocks Pro는 이 알림을 관리자 화면마다 표시하며, 라이선스 서버가 503을 응답했는지 HTML을 응답했는지에 따라 알림이 남는 시간이 다릅니다.

워드프레스 글 목록 위에 표시된 An error occurred, please try again. 알림

1️⃣ wordpress An error occurred: 알림을 띄운 플러그인 찾기

워드프레스 관리자 화면 위에 표시되므로 워드프레스 자체 오류로 보이지만, 워드프레스 코어 파일에는 이 문구가 없습니다. 문구는 플러그인의 라이선스 확인 코드에 들어 있어, 플러그인 폴더에서 문구를 검색하면 알림을 띄운 플러그인을 확인할 수 있습니다.

문구를 검색할 때는 쉼표와 마침표를 구분합니다. 마침표로 끊긴 [An error occurred. Please try again.]은 워드프레스 코어 문구이며, 대시보드의 [WordPress Events and News] 위젯에서 도시를 검색했을 때 이벤트 정보를 불러오지 못하면 화면 위가 아니라 위젯 안에 표시됩니다.

워드프레스 대시보드 이벤트 및 뉴스 위젯에 표시된 An error occurred. Please try again. 오류

뒤에 [later]가 붙은 코어 문구는 테마·플러그인 파일 편집기에서 저장한 파일이 오류를 내 원래대로 되돌릴 때와 사용자 정의하기 화면에서 사용합니다. 코어 문구는 워드프레스 한국어 번역 파일에 한국어 문장이 들어 있지만, Essential Blocks Pro는 한국어 번역 파일이 없어 한국어 관리자 화면에서도 라이선스 알림이 영어 그대로 표시됩니다.

grep -rl 'An error occurred, please try again' wp-content/plugins --include=*.php
wp-content/plugins/essential-blocks-pro/includes/Deps/WPDeveloper/Licensing/Manager.php

명령은 워드프레스 설치 폴더에서 실행하며, 결과 경로의 wp-content/plugins 다음 폴더 이름이 플러그인입니다. 이 문구는 Essential Blocks Pro 외에 Advanced Database Cleaner Pro의 라이선스 확인 코드와 TranslatePress의 AI API 키 확인 코드에도 들어 있습니다.

결과가 여러 개면 관리자 화면의 페이지 소스에서 알림 상자의 클래스 이름을 확인하며, Essential Blocks Pro의 알림은 [essential-blocks-pro-notice] 클래스를 사용합니다.

2️⃣ 알림이 뜨는 경우: 503·HTML 응답과 시간 초과

Essential Blocks Pro는 관리자 화면을 열 때마다 저장된 라이선스 정보가 있는지 확인하고, 없으면 라이선스 서버에 확인을 요청합니다. 아래 다이어그램은 라이선스 서버의 응답만 바꿔 가며 관리자 화면을 열어 확인한 결과입니다.

🧭 라이선스 확인과 관리자 알림
설명 다이어그램
📡 서버 응답
🛠️ 서버 복구 뒤
🖥️ 관리자 화면
An error occurred, please try again.
cURL error 28
알림 없음
→열 때마다
🧩 플러그인 라이선스 확인
🔑 라이선스 정보 3개월📝 저장된 오류⏳ 재시도 대기 1시간
⇄확인 요청
✕요청 안 함
☁️ 라이선스 서버
503
200 · HTML
응답 없음 15초
200 · JSON
라이선스 서버가 503을 응답하면 플러그인이 오류를 저장하고 1시간 재시도 대기를 설정하며, 관리자 화면마다 같은 알림이 표시됩니다.
라이선스 서버가 정상으로 돌아와도 1시간 대기 동안은 확인 요청을 보내지 않아, 저장된 알림이 그대로 남습니다.
응답 코드는 200이지만 본문이 JSON이 아닌 HTML이면 같은 알림이 저장되며, 이때는 재시도 대기가 설정되지 않습니다.
재시도 대기가 없어 다음 관리자 화면에서 다시 확인하며, 정상 응답이 오면 저장된 알림이 삭제됩니다.
15초 안에 응답이 없으면 알림 문구가 cURL 오류 내용으로 바뀌고, 1시간 재시도 대기가 설정됩니다.
503과 같이 1시간 대기 동안은 다시 확인하지 않아, cURL 오류 알림이 남습니다.
정상 응답을 받으면 라이선스 정보가 3개월 동안 저장되고 알림은 표시되지 않습니다.
저장된 라이선스 정보가 있는 동안은 라이선스 서버에 다시 확인하지 않으므로, 서버에 장애가 있어도 알림이 표시되지 않습니다.

503처럼 200이 아닌 응답과, 200이지만 본문이 JSON이 아닌 HTML 응답에서 이 알림이 표시됩니다. 15초 안에 응답이 없거나 연결 자체가 실패하면 워드프레스가 반환한 cURL 오류 내용이 그대로 알림에 표시되므로, 이 경우에는 다른 문구의 알림을 확인하게 됩니다.

정상 응답으로 저장된 라이선스 정보는 3개월 동안 유지되며, 그동안은 라이선스 서버에 장애가 있어도 확인 요청을 보내지 않아 알림이 표시되지 않습니다.

3️⃣ 서버 복구 뒤에도 남는 알림 삭제

라이선스 서버가 정상으로 돌아와도 알림은 바로 사라지지 않습니다. 503이나 시간 초과로 실패하면 플러그인이 1시간 재시도 대기를 설정하고, 그동안은 확인 요청을 보내지 않아 저장된 알림을 계속 표시합니다.

wp option list --search='wpdeveloper_sl_failed_http_*'
option_name	option_value
wpdeveloper_sl_failed_http_7838117baf19d8c92e668c95a04a2642	1792071902

값은 대기가 끝나는 시각(유닉스 시간)이며, 옵션 이름 끝의 문자열은 라이선스 서버 주소로 만든 값이라 같은 플러그인이면 사이트가 달라도 같습니다.

wp option delete wpdeveloper_sl_failed_http_7838117baf19d8c92e668c95a04a2642
Success: Deleted 'wpdeveloper_sl_failed_http_7838117baf19d8c92e668c95a04a2642' option.

삭제한 뒤 글 목록을 다시 열면 플러그인이 라이선스 서버에 다시 확인하고, 정상 응답이 오면 알림이 사라집니다. 라이선스 서버의 장애가 계속되는 중이면 다시 503을 받아 같은 알림과 1시간 대기가 새로 설정되므로, 삭제는 라이선스 서버가 정상으로 돌아온 뒤에 진행합니다.

🔢 FAQ & 추천 콘텐츠

보이지 않습니다. 알림은 관리자 화면 위에만 표시되며, 로그인하지 않은 방문자가 여는 페이지에는 표시되지 않습니다.

보입니다. Essential Blocks Pro는 라이선스 오류 알림을 표시할 때 사용자 권한을 확인하지 않습니다. 플러그인을 관리할 권한이 없는 작성자 권한으로 관리자 화면을 열어도 같은 알림이 표시됩니다.

다른 문구가 표시됩니다. 라이선스 서버가 만료 상태를 응답하면 알림이 [Your Essential Blocks Pro license key expired on …] 문구로 바뀝니다. 이때는 1시간 재시도 대기가 설정되지 않습니다.

ℹ️ 제휴 안내
본 사이트의 콘텐츠에는 제휴 링크가 포함되어 있습니다. 방문자가 이 링크를 통해 상품 또는 서비스를 구매하면 본 사이트는 판매처로부터 수수료를 지급받습니다. 이 과정에서 구매자가 지불하는 금액(이벤트 할인 시 금액이 내려갑니다↓)은 오르지 않습니다. 게시된 가격·할인·재고 정보는 작성 시점 기준이며 실제와 다를 수 있으므로, 구매 전 판매처에서 최종 확인하시기 바랍니다. 상품 선정과 평가는 자체 기준에 따라 작성되며, 수수료 지급 여부가 소개 순서나 평가 내용에 영향을 주지 않습니다.

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다

Prove your humanity: 3   +   2   =