퍼스트 파티 게재 경로 기능을 사용하면 콘텐츠 전송 네트워크(CDN) 또는 웹 인프라를 통해 Google 광고 서버로 요청을 라우팅하여 마스킹되지 않은 사용자 IP 주소를 복구할 수 있습니다.
서드 파티 요청의 경우 브라우저 및 OS 기능과 네트워크 구성으로 인해 IP 주소가 마스킹될 수 있습니다. 이 마스킹은 광고 수익, 지역 타겟팅, 무효 트래픽(IVT) 감지에 영향을 미칠 수 있습니다.
CDN은 도메인에 대한 모든 수신 요청에서 사용자의 마스킹되지 않은 클라이언트 IP를 수신합니다. 이 기능은 다음과 같은 이점이 있습니다.
- 클라이언트 측 코드 변경 없음: 자바스크립트를 수정하거나 매개변수를 수동으로 전달하지 않습니다. Google 게시자 태그(GPT)는 Google Ad Manager 설정에서 구성된 경로를 읽고 복구 요청을 비동기식으로 실행합니다.
- 오버헤드 감소: 요청이 가볍고 페이지 조회 세션별로 로컬에 캐시되며 광고 슬롯 정의와 함께 비동기식으로 실행됩니다.
- 암호화된 페이로드: 기본적으로 이 기능은 사용자의 IP 주소를 암호화된 페이로드로 반환합니다.
이 페이지에서는 원하는 CDN에 퍼스트 파티 게재 경로를 구성하는 방법을 설명합니다.
기본 요건
CDN을 구성하기 전에 다음을 수행합니다.
- Ad Manager 관리자 계정에서 게재 경로를 지정합니다(예:
/adserver/). 경로를 지정하려면 방법 1: 퍼스트 파티 게재 경로의 단계를 따르세요.- 서빙 경로가 고유하고 전송하는 트래픽이 이 경로를 사용하지 않는지 확인합니다.
- 다음 항목을 보유하거나 설정합니다.
- 대상 호스트 또는 원본:
securepubads.g.doubleclick.net - 대상 경로:
/pagead/fpm - 프로토콜: 기본 포트
443를 사용하는 HTTPS - 헤더: 헤더를
Host: securepubads.g.doubleclick.net로 설정합니다. - 캐싱: 경로의 캐싱을 우회하도록 CDN을 구성합니다. 예를 들어 캐시 정책을 캐시 우회 또는
Cache-Control: no-store헤더로 설정합니다.
- 대상 호스트 또는 원본:
- CDN이 Cloudflare인 경우 원본 규칙을 만들려면 Cloudflare Enterprise 등급이 있어야 합니다.
CDN 구성
구성된 경로와 일치하는 요청을 Google 광고 서버로 전달하도록 CDN 또는 리버스 프록시를 구성합니다. 원하는 CDN을 선택합니다.
Cloudflare
다음 값을 사용하여 대시보드에서 규칙을 만듭니다.
- 맞춤 필터 표현식: 다음을 추가합니다.
- 필드:
URI Path - 연산자:
starts with - 값: 경로(예:
/adserver/)
- 필드:
- 호스트 헤더 재정의: 다시 쓰기를 선택하고 대상 호스트
securepubads.g.doubleclick.net를 추가합니다. - DNS 재정의: 재정의를 선택하고 대상 호스트
securepubads.g.doubleclick.net를 추가합니다.
- 맞춤 필터 표현식: 다음을 추가합니다.
다음 값을 사용하여 대시보드에서 URL 규칙 재작성을 만듭니다.
- 맞춤 필터 표현식: 다음을 추가합니다.
- 필드:
URI Path - 연산자:
starts with - 값: 경로(예:
/adserver/)
- 필드:
- 경로: 다시 쓰기 > 정적 >을 선택하고
/pagead/fpm대상 경로를 추가합니다. - 쿼리: 보존을 선택합니다.
- 맞춤 필터 표현식: 다음을 추가합니다.
Amazon CloudFront
다음 값을 사용하여 원본 설정의 단계를 따릅니다.
- 원본 도메인:
securepubads.g.doubleclick.net - 프로토콜: HTTPS
- 원본 도메인:
함수 만들기를 따라 다음 예시를 추가합니다.
function handler(event) { var request = event.request; request.uri = '/pagead/fpm'; return request; }이 예시에서는 수신 요청 이벤트를 가져와 URI를 대상 경로에 할당하고 요청을 반환합니다.
변경사항 저장을 클릭하고 게시 탭으로 이동한 후 함수 게시를 클릭합니다.
다음 값으로 콘솔에서 배포 업데이트를 수행합니다.
- 경로 패턴: 경로입니다(예:
/adserver/*). - 원본 및 원본 그룹: 대상 호스트,
securepubads.g.doubleclick.net - 캐시 정책:
CachingDisabled를 선택합니다. - 원본 요청 정책:
AllViewerExceptHostHeader을 선택합니다. - 함수 연결:
- 뷰어 요청: CloudFront 함수를 선택하고 함수 이름을 추가합니다.
- 경로 패턴: 경로입니다(예:
Fastly
다음 값을 사용하여 호스트 추가를 따릅니다.
- 주소: 대상 호스트,
securepubads.g.doubleclick.net - 포트: 기본 포트,
443 - TLS를 사용 설정하시겠습니까?: 예
- 인증서 호스트 이름:
securepubads.g.doubleclick.net- SNI 호스트 이름을 인증서 이름과 일치를 선택합니다.
- SNI 호스트 이름:
securepubads.g.doubleclick.net - 재정의 호스트:
securepubads.g.doubleclick.net
- 인증서 호스트 이름:
- 주소: 대상 호스트,
다음 예시를 사용하여 VCL 스니펫 만들기를 따릅니다.
if (req.url ~ "^PATH") { set req.backend = F_NAME; set req.http.Host = "securepubads.g.doubleclick.net"; set req.url = regsub(req.url, "^PATH", "/pagead/fpm"); return(pass); }다음을 바꿉니다.
NAME: 호스트 이름(예:Google_GAM_FPM_Backend)PATH: 경로(예:/adserver/)
Google Cloud
다음 값으로 NEG 및 인터넷 엔드포인트 만들기를 수행합니다.
- 네트워크 엔드포인트 그룹 유형: 인터넷 NEG(전역)를 선택합니다.
- 기본 포트:
443 - 새 네트워크 엔드포인트: 정규화된 도메인 이름(FQDN) 및 포트를 선택합니다.
- FQDN: 대상 호스트
securepubads.g.doubleclick.net를 추가합니다.
전역 백엔드 서비스를 만들고 다음 값을 사용하여 커스텀 요청 헤더를 구성합니다.
- 백엔드 유형: 인터넷 네트워크 엔드포인트 그룹을 선택합니다.
- 프로토콜: HTTPS를 선택합니다.
- 헤더 이름:
Host - 헤더 값: 대상 호스트
securepubads.g.doubleclick.net를 추가합니다.
- 헤더 이름:
URL 맵 구성의 단계를 따릅니다.
라우팅 규칙에서 하위 도메인과 일치하는 프로덕션 호스트 규칙을 찾습니다.
routeRules구성으로 경로 일치자를 업데이트합니다.name: NAME defaultService: projects/PROJECT_ID/global/backendServices/DEFAULT_BACKEND routeRules: - priority: 1 matchRules: - prefixMatch: PATH service: projects/PROJECT_ID/global/backendServices/BACKEND_NAME routeAction: urlRewrite: pathPrefixRewrite: /pagead/fpm다음을 바꿉니다.
BACKEND_NAME: 2단계에서 만든 백엔드 서비스의 이름입니다(예:gam-fpm-backend-service).DEFAULT_BACKEND: 웹사이트를 호스팅하는 기본 백엔드 서비스입니다.- Cloud Storage에서 웹사이트를 호스팅하는 경우
defaultService필드의 리소스 경로에서backendServices을backendBuckets매개변수로 바꿉니다.
- Cloud Storage에서 웹사이트를 호스팅하는 경우
NAME: 경로 일치자의 이름(예:gam-fpm-matcher)PATH: 경로(예:/adserver/)PROJECT_ID: 프로젝트 ID입니다.
구현 테스트
CDN이 요청을 프록시하고 IP 주소를 전달하는지 확인하려면 curl 명령어를 사용하여 테스트를 실행합니다.
curl -i https://example.comPATH
PATH을 경로로 바꿉니다(예: /adserver/).
성공하면 다음과 같은 출력이 표시됩니다.
- HTTP 상태:
200 OK - 응답 콘텐츠: 기본적으로 암호화된 IP 토큰이 포함된 Google 백엔드 서버의 페이로드입니다.
구현 문제 해결하기
이 섹션에서는 CDN에서 퍼스트 파티 게재 경로 구현 문제를 해결하는 워크플로를 설명합니다.
다음 표에서는 문제 해결을 위한 문제, 원인, 해결 방법을 자세히 설명합니다.
| 문제 | 원인 | 솔루션 |
|---|---|---|
| CDN에서 HTTP 상태 404 또는 502를 수신함 | 경로 재작성이 활성화되지 않았거나 Host 헤더가 누락되었습니다. |
/pagead/fpm 대상 경로에 대한 재작성 매핑을 확인하고 Host 헤더가 대상 호스트 securepubads.g.doubleclick.net로 재정의됩니다. |
| 광고 요청 시 IP 주소가 업데이트되지 않습니다. | CDN 프록시에서 캐싱 사용 설정됨 | 경로의 캐시 정책을 CachingDisabled 정책 또는 Cache-Control: no-store 헤더로 설정해야 합니다. 모든 클라이언트는 백엔드 서비스에 도달하여 특정 IP 주소를 평가해야 합니다. |
| SSL 또는 TLS 핸드셰이크 실패 | 백엔드 원본 연결의 SNI 불일치 | TLS SNI 확장 프로그램에서 대상 호스트 securepubads.g.doubleclick.net를 전송하도록 CDN을 구성했는지 확인합니다. |
광고 요청에 ips 매개변수가 누락되었습니다. |
Ad Manager 경로가 CDN 경로와 일치하지 않음 | Ad Manager UI 전역 설정 페이지에 입력한 경로가 CDN에 구성된 경로와 일치하는지 확인합니다. 자세한 내용은 마스킹되지 않은 게시자 제공 IP 전달(베타)을 참고하세요. |