일반적인 설정 문제
OneSignal 대시보드 설정 확인
WordPress 설정 가이드의 각 단계를 완료했는지 확인하세요:- OneSignal 앱을 만들 때 WordPress 플러그인 옵션을 선택합니다
- 사이트 URL은 브라우저 URL과 정확히 일치해야 합니다
- 예를 들어
https://example.com은https://www.example.com과 동일하지 않습니다. 하나의 버전을 일관되게 사용하세요. - 푸시에는 하나의 사이트 원본만 지원됩니다. 동일 출처 정책을 참조하세요.
- 예를 들어
- 최소한 하나의 권한 프롬프트를 추가했는지 확인하세요.
OneSignal 코드를 수동으로 추가하지 마세요
OneSignal WordPress 플러그인은 초기화 스크립트 및 서비스 워커를 자동으로 포함합니다.- 사이트에 OneSignal JavaScript
init코드를 추가하지 마세요. - WordPress 플러그인과 함께 사용자 지정 코드 설정을 사용하지 마세요.
init메서드를 사용자 지정해야 하는 경우 플러그인을 제거하고 코드와 서비스 워커를 수동으로 추가하세요.
게시물 게시 시 알림 보내기
게시물, 페이지 또는 사용자 지정 게시물 유형을 게시하면 OneSignal이 구독자에게 자동으로 알림을 보낼 수 있습니다.
- 편집기 오른쪽과 아래쪽의 메타박스를 확인하세요. 필요에 따라 드래그 앤 드롭할 수 있습니다.
- 편집기 상단의 화면 옵션을 확인하여 OneSignal Push Notifications 메타박스가 체크되어 있는지 확인하세요.

- 사용자 지정 게시물 유형을 사용하고 있는지 확인하세요. 일반적으로 URL에서
post_type=your_custom_type형태로 확인할 수 있습니다. 그렇다면 OneSignal WordPress 플러그인 설정의 사용자 지정 게시물 유형 필드에 해당 유형을 추가하세요.

사이트 문제를 해결하는 방법
콘솔에서 OneSignal 오류 확인
Console 탭을 열고 페이지를 새로 고치고 빨간색 또는 노란색 OneSignal 관련 오류를 찾습니다.
도움이 필요하면 일반적인 OneSignal 콘솔 오류를 참조하세요.
브라우저에서 구독 상태 확인
페이지 로딩이 완료되고 콘솔에 OneSignal 오류가 없는 것을 확인한 후 다음을 붙여넣습니다:방문자가 구독한 경우 문자열(구독 ID)을 반환합니다. 구독하지 않았거나 구독이 아직 준비되지 않은 경우 
JavaScript
null 또는 빈 값이 표시될 수 있습니다. **OneSignal is not defined**가 표시되면 몇 초 기다린 후 다시 시도하거나, 먼저 일반적인 OneSignal 콘솔 오류의 콘솔 오류를 수정하세요——SDK가 지연 로더를 통해 아직 로드 중일 수 있습니다.
테스트 푸시 알림 보내기
구독이 존재하고 상태가 구독됨인 경우 푸시 가이드를 따라 알림을 보냅니다.
아무것도 나타나지 않으면 브라우저별 수정 사항에 대해 표시되지 않는 알림을 참조하세요.
일반적인 OneSignal 콘솔 오류
SdkInitError: OneSignal: This web push config can only be used on … Your current origin is …
SdkInitError: OneSignal: This web push config can only be used on … Your current origin is …

PushPermissionNotGrantedError: The user dismissed the permission prompt.
방문자가 브라우저 프롬프트를 거부했습니다. 대기 기간이 만료될 때까지 다시 나타나지 않습니다.
브라우저 규칙에 대해서는 웹 권한 프롬프트를 참조하거나 사이트 데이터를 지워 즉시 다시 시도하세요.
PushPermissionNotGrantedError: The user dismissed the permission prompt.
The OneSignal web SDK can only be initialized once.
The OneSignal web SDK can only be initialized once.

Installing service worker failed.. 403 or 404 error
Installing service worker failed.. 403 or 404 error

your-site.com을 교체하고 기본값과 다른 경우 실제 플러그인 폴더 이름과 일치시키세요):
https://your-site.com/wp-content/plugins/onesignal-free-web-push-notifications/sdk_files/OneSignalSDKWorker.js
그렇지 않은 경우 CDN 또는 캐싱 문제를 해결하려면 일반적인 플러그인 지원을 참조하세요.
일반적인 플러그인 지원
CDN 및 캐싱 플러그인은 OneSignal의 필수 파일을 차단할 수 있습니다. 아래 경로는 플러그인 디렉터리가 **onesignal-free-web-push-notifications**라고 가정합니다. 설치에서 다른 폴더 이름을 사용하는 경우 조정하세요.
Autoptimize
Excluded scripts에 다음을 추가합니다:WP Rocket
CDN > Exclude Files From CDN 아래에 다음을 추가합니다:LiteSpeed Cache
CDN > Exclude Path 아래에 다음을 추가합니다:WP Super Cache
- Settings > WP Super Cache > CDN으로 이동합니다
- Exclude if substring에
onesignal-free-web-push-notifications를 포함합니다 - Contents > Delete Cache를 클릭합니다
WP Engine
WP Engine은 CDN을 통해 플러그인 URL을 재작성할 수 있습니다. HTML 후처리 규칙은 환경마다 다릅니다. 아래 스니펫은 예시일 뿐입니다——적용 전에 WP Engine 지원 또는 사용자 포털에서 경로를 확인하세요. WP Engine plugin > General Settings > HTML Post-Processing에서 다음과 유사한 규칙이 필요할 수 있습니다. 각 자리 표시자를 귀하의 사이트와 WP Engine CDN 호스트명의 실제 값으로 교체하세요:| 자리 표시자 | 교체할 값 |
|---|---|
YOURSITEHERE | 베어 도메인(정규식 세그먼트), 예: example.com의 경우 example |
mywpenginehandleHere | WP Engine 설치 이름(.wpengine.com 앞의 서브도메인) |
wpengineCDNpathHere | WP Engine의 NetDNA / CDN 경로 세그먼트(CDN URL에 자주 표시됨) |
mywebsiteHere | 경로 없는 라이브 사이트 오리진, 예: https://example.com |
text
W3 Total Cache
- Performance > CDN으로 이동합니다
- Rejected files 아래에 다음을 추가합니다:

BunnyCDN
플러그인의 CDN Excluded Paths에서 onesignal을 제외합니다.
CDN Enabler
Settings > CDN Enabler에서 “Exclusions”에 다음을 추가합니다:PressCDN
Exclude Directories에 다음을 추가합니다:Breeze
Settings > CDN > Exclude Content에 다음을 추가합니다:
Hummingbird Pro
Hummingbird > Asset Optimization으로 이동합니다. JavaScript(OneSignal 자산이 있는 경우 CSS도) 아래에서 URL에onesignal-free-web-push-notifications 또는 **OneSignalSDK**가 포함된 파일을 찾습니다. 축소/결합/지연에서 제외하거나 해당 자산을 로드하지 않음 최적화로 전환하여 플러그인이 이를 재작성하거나 지연시키지 않도록 하세요.

Sucuri
OneSignal 파일을 허용하려면 Sucuri의 화이트리스트 가이드를 따르세요.Solid Security (구 iThemes Security)
OneSignalSDKWorker.js.php가 실행될 수 있도록 System Tweaks에서 Disable PHP in Plugins(또는 동등한 옵션)을 비활성화합니다.

Defender Security plugin
“Prevent PHP execution”을 활성화하지 마세요. Defender Plugin > Security Tweaks로 이동하여 설정이 비활성화되어 있는지 확인합니다.서비스 워커 액세스를 위한 .htaccess 예시
Apache 2.4+는 종종
Order allow,deny 대신 Require all denied / Require all granted를 사용합니다. 호스트에 문의하거나 서버의 Apache 버전에 맞게 규칙을 조정하세요.알림을 보낸 후 서버 속도 저하 또는 사이트에 액세스할 수 없음
알림을 보낸 후 서버 속도가 저하되거나 액세스할 수 없게 되면 알림 자산의 부하 증가 또는 제한된 서버 리소스로 인한 경우가 많습니다.자체 알림 아이콘을 호스팅하지 마세요
알림에 사용되는 이미지를 자체 호스팅하지 마세요. 자체 알림 아이콘 또는 이미지를 호스팅하면 알림이 전송될 때 모든 수신자의 브라우저가 동시에 이미지를 가져오려고 시도하므로 서버에 과부하가 걸릴 수 있습니다. 서버 부하를 줄이려면 동시 액세스 수가 많은 환경에 최적화된 이미지 호스팅 솔루션 또는 CDN 서비스를 사용하세요.호스팅 리소스 업그레이드 고려
서버 문제가 지속되면 다음이 필요할 수 있습니다:- 호스팅 플랜 업그레이드: 대규모 알림 전송을 처리하려면 더 높은 대역폭 또는 더 강력한 호스팅이 필요할 수 있습니다.
- 호스팅 제공업체에 문의: 제공업체는 호스팅 환경에 특정한 인사이트 또는 최적화를 제공할 수 있습니다.

