메인 콘텐츠로 건너뛰기

일반적인 설정 문제

OneSignal 대시보드 설정 확인

WordPress 설정 가이드의 각 단계를 완료했는지 확인하세요:
  • OneSignal 앱을 만들 때 WordPress 플러그인 옵션을 선택합니다
  • 사이트 URL은 브라우저 URL과 정확히 일치해야 합니다
    • 예를 들어 https://example.comhttps://www.example.com동일하지 않습니다. 하나의 버전을 일관되게 사용하세요.
    • 푸시에는 하나의 사이트 원본만 지원됩니다. 동일 출처 정책을 참조하세요.
  • 최소한 하나의 권한 프롬프트를 추가했는지 확인하세요.

OneSignal 코드를 수동으로 추가하지 마세요

OneSignal WordPress 플러그인은 초기화 스크립트 및 서비스 워커를 자동으로 포함합니다. ✅ 이것은 다음을 의미합니다:
  • 테마, 바닥글 또는 다른 플러그인에 OneSignal JavaScript 코드를 수동으로 추가하면 안 됩니다.
사용자 지정 코드 설정을 사용하려면 충돌을 방지하기 위해 먼저 WordPress 플러그인을 제거하세요.

사이트 문제를 해결하는 방법

1

플러그인이 활성화되어 있는지 확인하고 개발자 도구 열기

플러그인이 활성화된 상태로 일반(비시크릿) 브라우저 창에서 사이트를 로드합니다.

사이트를 마우스 오른쪽 버튼으로 클릭하고 검사를 클릭한 다음 Console 탭을 엽니다.

2

콘솔에서 OneSignal 오류 확인

Console 탭을 열고 페이지를 새로 고치고 빨간색 또는 노란색 OneSignal 관련 오류를 찾습니다. 도움이 필요하면 일반적인 OneSignal 콘솔 오류를 참조하세요.
3

브라우저에서 구독 상태 확인

콘솔에 다음을 붙여넣습니다:
OneSignal.User.PushSubscription.id
구독한 경우 문자열(구독 ID)을 반환합니다.

콘솔에서 OneSignal 구독 ID를 찾습니다.

4

OneSignal 대시보드에서 구독 ID 확인

OneSignal.com > 오디언스 > 구독으로 이동하여 위에서 반환된 ID를 검색합니다.

구독 ID에 대해 OneSignal 대시보드를 검색합니다.

5

테스트 푸시 알림 보내기

구독이 존재하고 상태가 구독됨인 경우 푸시 가이드를 따라 알림을 보냅니다. 아무것도 나타나지 않으면 브라우저별 수정 사항에 대해 표시되지 않는 알림을 참조하세요.

일반적인 OneSignal 콘솔 오류

SdkInitError: OneSignal: This web push config can only be used on … Your current origin is …

사이트 URL 불일치 오류.

OneSignal 대시보드의 사이트 URL이 실제 도메인과 일치하지 않습니다. 브라우저에서 보는 도메인과 정확히 일치하는지 확인하세요.

PushPermissionNotGrantedError: The user dismissed the permission prompt.

방문자가 브라우저 프롬프트를 거부했습니다. 대기 기간이 만료될 때까지 다시 나타나지 않습니다. 브라우저 규칙에 대해서는 웹 권한 프롬프트를 참조하거나 사이트 데이터를 지워 즉시 다시 시도하세요.

The OneSignal web SDK can only be initialized once.

중복 OneSignal 초기화 오류.

OneSignal을 두 번 로드하고 있습니다. 플러그인을 사용하는 경우 수동으로 추가된 OneSignal 코드를 제거하세요.

Installing service worker failed.. 403 or 404 error

서비스 워커 파일 누락(403/404).

이 파일에 액세스할 수 있는지 확인하세요: https://your-site.com/wp-content/plugins/onesignal-free-web-push-notifications/sdk_files/OneSignalSDKWorker.js 그렇지 않은 경우 CDN 또는 캐싱 문제를 해결하려면 일반적인 플러그인 지원을 참조하세요.

일반적인 플러그인 지원

CDN 및 캐싱 플러그인은 OneSignal의 필수 파일을 차단할 수 있습니다. 다음 플러그인별 설정을 사용하세요:

Autoptimize

Excluded scripts에 다음을 추가합니다:
wp-content/plugins/onesignal-free-web-push-notifications/sdk_files/(.*)

WP Rocket

CDN > Exclude Files From CDN 아래에 다음을 추가합니다:
(.*)/onesignal-free-web-push-notifications/sdk_files/(.*)

LiteSpeed Cache

CDN > Exclude Path 아래에 다음을 추가합니다:
(.*)/onesignal-free-web-push-notifications/sdk_files/(.*)
그런 다음 저장을 누릅니다.

WP Super Cache

  1. Settings > WP Super Cache > CDN으로 이동합니다
  2. Exclude if substringonesignal-free-web-push-notifications를 포함합니다
  3. Contents > Delete Cache를 클릭합니다

WP Engine

WP Engine plugin > General Settings > HTML Post-Processing에서 YOURSITEHERE를 교체하여 다음을 추가합니다:
text
#https?://(www\.)?(YOURSITEHERE\.com|mywpenginehandleHere.wpengine.com|wpengineCDNpathHere.wpengine.netdna-(ssl|cdn).com)/wp-(content|includes)#
=> https://wpengineCDNpathHere-wpengine.netdna-ssl.com/wp-$4
#https://wpengineCDNpathHere-wpengine.netdna-ssl.com/plugins/onesignal-free-web-push-notifications/#
=> https://mywebsiteHere.com/wp-content/plugins/onesignal-free-web-push-notifications/
#https://wpengineCDNpathHere-wpengine.netdna-ssl.com/wp-content/plugins/onesignal-free-web-push-notifications/#
=> https://mywebsiteHere.com/wp-content/plugins/onesignal-free-web-push-notifications/

W3 Total Cache

  1. Performance > CDN으로 이동합니다
  2. Rejected files 아래에 다음을 추가합니다:
{plugins_dir}/onesignal-free-web-push-notifications/sdk_files/*

W3 Total Cache 제외 설정.

BunnyCDN

플러그인의 CDN Excluded Paths에서 onesignal을 제외합니다.

BunnyCDN 제외 예시.

CDN Enabler

Settings > CDN Enabler에서 “Exclusions”에 다음을 추가합니다:
onesignal-free-web-push-notifications

PressCDN

Exclude Directories에 다음을 추가합니다:
/wp-content/plugins/onesignal-free-web-push-notifications/

Breeze

Settings > CDN > Exclude Content에 다음을 추가합니다:
/onesignal-free-web-push-notifications/sdk_files/

Breeze 제외 예시.

Hummingbird Pro

Asset Optimization으로 이동하여 OneSignal SDK 파일을 찾고 최적화에서 제거합니다.

Hummingbird Pro 자산 최적화.

Sucuri

OneSignal 파일을 허용하려면 Sucuri의 화이트리스트 가이드를 따르세요.

iThemes Security plugin

System Tweaks 아래의 “Disable PHP in Plugins” 옵션을 비활성화합니다.

iThemes PHP 플러그인 설정.

Defender Security plugin

“Prevent PHP execution”을 활성화하지 마세요. Defender Plugin > Security Tweaks로 이동하여 설정이 비활성화되어 있는지 확인합니다.

서비스 워커 액세스를 위한 .htaccess 예시

html
<Files *.php>
Order allow,deny
Deny from all
</Files>
<Files OneSignalSDKWorker.js.php>
Allow from all
ForceType 'application/javascript; charset=UTF-8'
</Files>
<Files OneSignalSDKWorker.js>
Allow from all
ForceType 'application/javascript; charset=UTF-8'
</Files>

알림을 보낸 후 서버 속도 저하 또는 사이트에 액세스할 수 없음

알림을 보낸 후 서버 속도가 저하되거나 액세스할 수 없게 되면 알림 자산의 부하 증가 또는 제한된 서버 리소스로 인한 경우가 많습니다.

자체 알림 아이콘을 호스팅하지 마세요

알림에 사용되는 이미지를 자체 호스팅하지 마세요. 자체 알림 아이콘 또는 이미지를 호스팅하면 알림이 전송될 때 모든 수신자의 브라우저가 동시에 이미지를 가져오려고 시도하므로 서버에 과부하가 걸릴 수 있습니다. 서버 부하를 줄이려면 동시 액세스 수가 많은 환경에 최적화된 이미지 호스팅 솔루션 또는 CDN 서비스를 사용하세요.

호스팅 리소스 업그레이드 고려

서버 문제가 지속되면 다음이 필요할 수 있습니다:
  • 호스팅 플랜 업그레이드: 대규모 알림 전송을 처리하려면 더 높은 대역폭 또는 더 강력한 호스팅이 필요할 수 있습니다.
  • 호스팅 제공업체에 문의: 제공업체는 호스팅 환경에 특정한 인사이트 또는 최적화를 제공할 수 있습니다.