Cloudflare(BYOCDN)
이 구성은 에이전틱 트래픽(AI 봇 및 LLM 사용자 에이전트의 요청)을 Edge Optimize 백엔드 서비스(live.edgeoptimize.net)로 라우팅합니다. 사람 방문자와 SEO 봇은 기존과 동일하게 사용자의 원본 서버에서 계속 제공됩니다. 구성을 테스트하려면 설정이 완료된 후 응답에서 헤더 x-edgeoptimize-request-id를 찾습니다.
사전 요구 사항
Cloudflare 작업자 라우팅 규칙을 설정하기 전에 다음을 확인하십시오.
- 도메인에서 작업자가 활성화된 Cloudflare 계정
- Cloudflare에서 도메인에 대한 DNS 설정 액세스
- LLM Optimizer 온보딩 프로세스 완료
- LLM Optimizer로 CDN 로그 전달 완료
- LLM Optimizer UI에서 검색한 Edge Optimize API 키
- (선택 사항) 스테이징 라우팅을 테스트하려면 선택 사항: 이 페이지의 끝에 있는 스테이징 호스트 이름에서 라우팅 테스트를 참조하십시오.
프로덕션 Edge 최적화 API 키를 검색하는 단계:
-
LLM Optimizer에서 고객 구성을 열고 CDN 구성 탭을 선택합니다.
-
AI 에이전트에 최적화 배포 섹션을 찾습니다. 최적화 엔진 활성화 확인란을 선택합니다.
-
확인 대화 상자에서 활성화를 선택합니다.
-
세부 정보 보기를 선택합니다. 최적화 배포 세부 정보 대화 상자에서 프로덕션 API 키을(를) 복사합니다(필드 옆 사용).
note NOTE 대화 상자에서 설정이 완료되지 않았음을 보여줄 수 있습니다. 이는 라우팅을 확인할 때까지 발생합니다. IT 또는 CDN 팀이 구성을 완료할 수 있도록 API 키를 복사할 수 있습니다.
또한 위 단계에 대한 도움이 필요한 경우 Adobe 계정 팀 또는 llmo-at-edge@adobe.com에 문의하십시오.
라우팅 작동 방식
올바르게 구성되면 에이전틱 사용자 에이전트의 도메인 요청(예: www.example.com/page.html)이 Cloudflare 작업자에 의해 이전되어 Edge Optimize 백엔드로 라우팅됩니다. 백엔드 요청에 필수 헤더가 포함됩니다.
백엔드 요청 테스트
Edge Optimize 백엔드에 직접 요청하여 라우팅을 확인할 수 있습니다.
curl -svo /dev/null https://live.edgeoptimize.net/page.html \
-H 'x-forwarded-host: www.example.com' \
-H 'x-edgeoptimize-url: /page.html' \
-H 'x-edgeoptimize-api-key: $EDGE_OPTIMIZE_API_KEY' \
-H 'x-edgeoptimize-config: LLMCLIENT=TRUE;'
필수 헤더
Edge Optimize 백엔드에 대한 요청에는 다음 헤더를 설정해야 합니다.
x-forwarded-hostwww.example.comx-edgeoptimize-url/page.html 또는 /products?id=123x-edgeoptimize-api-keyyour-api-key-herex-edgeoptimize-configLLMCLIENT=TRUE;설정 옵션
Edge Optimize용 Cloudflare 작업자를 설정하는 방법에는 두 가지가 있습니다.
- 옵션 1: Cloudflare에 배포(권장) — 새 작업자를 자동으로 만들고 필요한 환경 변수 및 암호를 묻는 메시지를 표시합니다. 이 도메인에 대한 기존 Cloudflare 작업자가 없는 경우 이 옵션을 사용합니다.
- 옵션 2: 수동 설정 — 작업자를 직접 만들고 구성하는 단계별 지침을 따릅니다. 기존 Cloudflare Worker가 이미 도메인에 구성되어 있는 경우 이 옵션을 사용합니다. 기존 작업자에 Edge 최적화 코드를 병합해야 합니다(2단계: 작업자 코드 추가 참조). 또는 배포보다 전체 제어를 선호하는 경우 이 옵션을 사용합니다.
선택한 옵션에 관계없이 작업자를 도메인에 수동으로 연결해야 합니다 — 단계: 도메인에 경로 추가를 참조하십시오.
옵션 1: Cloudflare에 배포
이 옵션은 Cloudflare에 배포 버튼을 사용하여 자동으로 작업자를 만들고 Cloudflare 계정에 필요한 환경 변수와 암호를 구성합니다. 새 작업자를 설정하는 경우 이를 시작하는 가장 빠른 방법입니다.
1단계: 작업자 배포
아래 버튼을 클릭하여 Edge Optimize 작업자를 Cloudflare 계정에 배포합니다.
2단계: 배포 양식 작성
버튼을 클릭하면 작업자 설정 페이지가 열립니다. 다음과 같이 양식을 입력합니다.
-
Git 계정 — 드롭다운에서 GitHub 또는 GitLab 계정을 선택합니다. Cloudflare는 작업자 코드를 계정의 저장소에 포크합니다. 계정이 목록에 없으면 + 새 GitHub 연결 또는 + 새 GitLab 연결을 선택하여 드롭다운에서 직접 새 연결을 추가할 수 있습니다. 자세한 내용은 Cloudflare Git 통합 안내서를 참조하십시오.
-
개인 Git 저장소 만들기 — 이 항목을 선택된 상태로 둡니다(기본값).
-
프로젝트 이름 —
edge-optimize-router로 두거나 선택한 이름을 입력합니다. -
EDGE_OPTIMIZE_API_KEY — Adobe에서 제공한 Edge Optimize API 키를 붙여넣습니다. 이 값은 암호화하여 저장됩니다.
-
EDGE_OPTIMIZE_TARGET_HOST — 프로토콜 없이 사이트 도메인을 입력합니다(예:
www.example.com). -
빌드 명령 — 비워 둡니다.
-
배포 명령 —
npm run deploy(미리 채워짐)로 둡니다. -
비프로덕션 분기의 빌드 — 선택하지 않은 상태로 둡니다. 이 기능은 개발자 워크플로 기능이며 이 배포에는 필요하지 않습니다.
-
만들기 및 배포를 클릭합니다.
작업자를 배포한 후 도메인에 경로를 추가하여 작업자를 도메인에 연결합니다. 라우팅은 자동으로 구성되지 않으며 수동으로 완료해야 합니다.
옵션 2: 수동 설정
다음 단계에 따라 작업자를 수동으로 만들고 구성합니다.
1단계: Cloudflare 작업자 만들기
- Cloudflare 대시보드에 로그인합니다.
- 사이드바에서 작업자 및 페이지로 이동합니다.
- 애플리케이션 만들기를 클릭한 다음 작업자 만들기를 클릭합니다.
- 작업자 이름을 지정합니다(예:
edge-optimize-router). - 기본 코드로 작업자를 만들려면 배포를 클릭합니다.
2단계: 작업자 코드 추가
작업자를 만든 후 코드 편집을 클릭하고 기본 코드를 다음으로 바꿉니다. 기존 Cloudflare Worker가 있는 경우 완전히 대체하지 않고 아래 코드를 기존 작업자 코드와 병합하십시오.
/**
* Edge Optimize BYOCDN - Cloudflare Worker
*
* This worker routes requests from agentic bots (AI/LLM user agents) to the
* Edge Optimize backend service for optimized content delivery.
*
* Features:
* - Routes agentic bot traffic to Edge Optimize backend
* - Failover to origin on Edge Optimize errors (any 4XX or 5XX errors)
* - Loop protection to prevent infinite redirects
* - Human visitors and SEO bots are served from the origin as usual
*/
// List of agentic bot user agents to route to Edge Optimize
const AGENTIC_BOTS = [
'AdobeEdgeOptimize-AI',
'ChatGPT-User',
'GPTBot',
'OAI-SearchBot',
'PerplexityBot',
'Perplexity-User'
];
// Targeted paths for Edge Optimize routing
// Set to null to route all HTML pages, or specify an array of paths
const TARGETED_PATHS = null; // e.g., ['/', '/page.html', '/products']
// Failover configuration
// Failover on any 4XX client error or 5XX server error from Edge Optimize
const FAILOVER_ON_4XX = true; // Failover on any 4XX error (400-499)
const FAILOVER_ON_5XX = true; // Failover on any 5XX error (500-599)
export default {
async fetch(request, env, ctx) {
return await handleRequest(request, env, ctx);
},
};
async function handleRequest(request, env, ctx) {
const url = new URL(request.url);
const userAgent = request.headers.get("user-agent")?.toLowerCase() || "";
// Check if request is already processed (loop protection)
const isEdgeOptimizeRequest = !!request.headers.get("x-edgeoptimize-request");
// Construct the original path and query string
const pathAndQuery = `${url.pathname}${url.search}`;
// Check if the path matches HTML pages (no extension or .html extension)
const isHtmlPage = /(?:\/[^./]+|\.html|\/)$/.test(url.pathname);
// Check if path is in targeted paths (if specified)
const isTargetedPath = TARGETED_PATHS === null
? isHtmlPage
: (isHtmlPage && TARGETED_PATHS.includes(url.pathname));
// Check if user agent is an agentic bot
const isAgenticBot = AGENTIC_BOTS.some((ua) => userAgent.includes(ua.toLowerCase()));
// Route to Edge Optimize if:
// 1. Request is NOT already from Edge Optimize (prevents infinite loops)
// 2. User agent matches one of the agentic bots
// 3. Path is targeted for optimization
if (!isEdgeOptimizeRequest && isAgenticBot && isTargetedPath) {
// Build the Edge Optimize request URL
const edgeOptimizeURL = `https://live.edgeoptimize.net${pathAndQuery}`;
// Clone and modify headers for the Edge Optimize request
const edgeOptimizeHeaders = new Headers(request.headers);
// Remove any existing Edge Optimize headers for security
edgeOptimizeHeaders.delete("x-edgeoptimize-api-key");
edgeOptimizeHeaders.delete("x-edgeoptimize-url");
edgeOptimizeHeaders.delete("x-edgeoptimize-config");
edgeOptimizeHeaders.delete("x-edgeoptimize-fetcher-key"); // Optional (required only in case of WAF)
// x-forwarded-host: The original site domain
// Use environment variable if set, otherwise use the request host
edgeOptimizeHeaders.set("x-forwarded-host", env.EDGE_OPTIMIZE_TARGET_HOST ?? url.host);
// x-edgeoptimize-api-key: Your Adobe-provided API key
edgeOptimizeHeaders.set("x-edgeoptimize-api-key", env.EDGE_OPTIMIZE_API_KEY);
// x-edgeoptimize-url: The original request URL path and query
edgeOptimizeHeaders.set("x-edgeoptimize-url", pathAndQuery);
// x-edgeoptimize-config: Configuration for cache key differentiation
edgeOptimizeHeaders.set("x-edgeoptimize-config", "LLMCLIENT=TRUE;");
// edgeOptimizeHeaders.set("x-edgeoptimize-fetcher-key", "<YOUR FETCHER KEY>"); // Optional (required only in case of WAF)
try {
// Send request to Edge Optimize backend
const edgeOptimizeResponse = await fetch(new Request(edgeOptimizeURL, {
headers: edgeOptimizeHeaders,
redirect: "manual", // Preserve redirect responses from Edge Optimize
}), {
cf: {
cacheEverything: true, // Enable caching based on origin's cache-control headers
},
});
// Check if we need to failover to origin
const status = edgeOptimizeResponse.status;
const is4xxError = FAILOVER_ON_4XX && status >= 400 && status < 500;
const is5xxError = FAILOVER_ON_5XX && status >= 500 && status < 600;
if (is4xxError || is5xxError) {
console.log(`Edge Optimize returned ${status}, failing over to origin`);
return await failoverToOrigin(request, env, url);
}
// Return the Edge Optimize response
return edgeOptimizeResponse;
} catch (error) {
// Network error or timeout - failover to origin
console.log(`Edge Optimize request failed: ${error.message}, failing over to origin`);
return await failoverToOrigin(request, env, url);
}
}
// For all other requests (human users, SEO bots), pass through unchanged
return fetch(request);
}
/**
* Failover to origin server when Edge Optimize returns an error
* @param {Request} request - The original request
* @param {Object} env - Environment variables
* @param {URL} url - Parsed URL object
*/
async function failoverToOrigin(request, env, url) {
// Build origin URL
const originURL = `${url.protocol}//${env.EDGE_OPTIMIZE_TARGET_HOST}${url.pathname}${url.search}`;
// Prepare headers - clean Edge Optimize headers and add loop protection
const originHeaders = new Headers(request.headers);
originHeaders.set("Host", env.EDGE_OPTIMIZE_TARGET_HOST);
originHeaders.delete("x-edgeoptimize-api-key");
originHeaders.delete("x-edgeoptimize-url");
originHeaders.delete("x-edgeoptimize-config");
originHeaders.delete("x-forwarded-host");
originHeaders.set("x-edgeoptimize-request", "fo");
// Create and send origin request
const originRequest = new Request(originURL, {
method: request.method,
headers: originHeaders,
body: request.body,
redirect: "manual",
});
const originResponse = await fetch(originRequest);
// Add failover marker header to response
const modifiedResponse = new Response(originResponse.body, {
status: originResponse.status,
statusText: originResponse.statusText,
headers: originResponse.headers,
});
modifiedResponse.headers.set("x-edgeoptimize-fo", "1");
return modifiedResponse;
}
작업자를 게시하려면 저장 및 배포를 클릭합니다.
3 단계: 환경 변수 및 암호 구성
환경 변수는 API 키와 같은 민감한 구성을 안전하게 저장합니다.
-
작업자 설정에서 설정 > 변수로 이동합니다.
-
환경 변수에서 변수 추가를 클릭합니다.
-
다음 변수를 추가합니다.
table 0-row-3 1-row-3 2-row-3 변수 이름 설명 필수 EDGE_OPTIMIZE_API_KEYAdobe 제공 Edge Optimize API 키입니다. 예 EDGE_OPTIMIZE_TARGET_HOSTEdge Optimize 요청의 타깃 호스트( x-forwarded-host헤더로 전송됨)와 장애 조치의 원본 도메인입니다. 프로토콜 없이 도메인만 사용해야 합니다(예:https://www.example.com이 아닌www.example.com).예 -
API 키를 안전하게 저장하려면 암호화를 클릭합니다.
-
저장 및 배포를 클릭합니다.
도메인에 대한 경로 추가 add-a-route-to-your-domain
어떤 설정 옵션을 사용했는지에 관계없이 작업자를 도메인에 수동으로 연결해야 합니다. 이 단계에서는 트래픽의 작업자를 활성화합니다.
- 작업자의 설정 > 트리거로 이동합니다.
- 경로에서 경로 추가를 클릭합니다.
- 도메인 패턴(예:
www.example.com/*또는example.com/*)을 입력합니다. - 드롭다운에서 영역을 선택합니다.
- 저장을 클릭합니다.
또는 영역 수준에서 경로를 구성할 수 있습니다.
- Cloudflare에서 도메인으로 이동합니다.
- 작업자 경로로 이동합니다.
- 경로 추가를 클릭하고 패턴과 작업자를 지정합니다.
장애 조치 비헤이비어 확인
Edge Optimize를 사용할 수 없거나 오류를 반환하는 경우 작업자가 자동으로 원본으로 장애 조치합니다. 장애 조치(Failover) 응답에는 x-edgeoptimize-fo 헤더가 포함됩니다.
< HTTP/2 200
< x-edgeoptimize-fo: 1
Cloudflare 작업자 로그에서 장애 조치 이벤트를 모니터링하여 문제를 해결할 수 있습니다.
작업자 논리 이해
Cloudflare 작업자는 다음과 같은 논리를 구현합니다.
-
사용자 에이전트 검색: 수신 요청의 사용자 에이전트가 정의된 에이전틱 봇과 일치하는지 확인합니다(대소문자 구분 안 함).
-
경로 타기팅: 선택적으로 타기팅된 경로에 따라 요청을 필터링합니다. 기본적으로 모든 HTML 페이지(
/로 끝나는 URL, 확장자 없음 또는.html)가 라우팅됩니다.TARGETED_PATHS배열을 사용하여 특정 경로를 지정할 수 있습니다. -
루프 보호:
x-edgeoptimize-request헤더에서 무한 루프를 방지합니다. Edge Optimize에서 원본을 다시 요청하면 이 헤더가"1"로 설정되고, 작업자는 요청을 다시 Edge Optimize로 라우팅하지 않고 통과시킵니다. -
헤더 보안: Edge Optimize 헤더를 설정하기 전에 작업자가 수신 요청에서 기존
x-edgeoptimize-*헤더를 제거하여 헤더 삽입 공격을 방지합니다. -
헤더 매핑: 작업자가 Edge Optimize에 필요한 헤더를 설정합니다.
x-forwarded-host- 원래 사이트 도메인을 식별합니다.x-edgeoptimize-url- 원래 요청 경로와 쿼리 문자열을 유지합니다.x-edgeoptimize-api-key- Edge Optimize로 요청을 인증합니다.x-edgeoptimize-config- 캐시 키 구성을 제공합니다.
-
장애 조치(Failover) 논리: Edge Optimize가 오류 상태 코드(4XX 클라이언트 오류 또는 5XX 서버 오류)를 반환하거나 네트워크 오류로 인해 요청이 실패할 경우, 작업자는
EDGE_OPTIMIZE_TARGET_HOST를 사용하여 자동으로 원본으로 장애 조치합니다. 장애 조치 응답에는 장애 조치가 발생했음을 나타내는x-edgeoptimize-fo: 1헤더가 포함됩니다. -
리디렉션 처리:
redirect: "manual"옵션을 사용하면 작업자가 따르지 않고 Edge Optimize에서 리디렉션 응답을 클라이언트에게 전달할 수 있습니다.
구성 사용자 정의
코드 상단의 구성 상수를 수정하여 작업자 비헤이비어를 사용자 정의할 수 있습니다.
에이전틱 봇 목록
사용자 에이전트를 추가하거나 제거하려면 AGENTIC_BOTS 배열을 수정합니다.
const AGENTIC_BOTS = [
'AdobeEdgeOptimize-AI',
'ChatGPT-User',
'GPTBot',
'OAI-SearchBot',
'PerplexityBot',
'Perplexity-User',
// Add additional user agents as needed
'ClaudeBot',
'Anthropic-AI'
];
타기팅된 경로
기본적으로 모든 HTML 페이지는 Edge Optimize로 라우팅됩니다. 특정 경로로 라우팅을 제한하려면 TARGETED_PATHS 배열을 수정합니다.
// Route all HTML pages (default)
const TARGETED_PATHS = null;
// Or specify exact paths to route
const TARGETED_PATHS = ['/', '/page.html', '/products', '/about-us'];
장애 조치(Failover) 구성
기본적으로 작업자는 Edge Optimize에서 4XX 또는 5XX 오류가 발생하면 장애 조치됩니다. 다음 비헤이비어를 사용자 정의합니다.
// Default: failover on any 4XX or 5XX error
const FAILOVER_ON_4XX = true;
const FAILOVER_ON_5XX = true;
// Failover only on 5XX server errors (not 4XX client errors)
const FAILOVER_ON_4XX = false;
const FAILOVER_ON_5XX = true;
// Disable automatic failover (not recommended)
const FAILOVER_ON_4XX = false;
const FAILOVER_ON_5XX = false;
중요 고려 사항
-
장애 조치(Failover) 비헤이비어: Edge Optimize가 오류(4XX 또는 5XX 상태 코드)를 반환하거나 네트워크 오류로 인해 요청이 실패하는 경우 작업자가 자동으로 원본에 장애 조치됩니다. 장애 조치에서
EDGE_OPTIMIZE_TARGET_HOST를 원본 도메인으로 사용합니다(Fastly의F_Default_Origin또는 CloudFront의Default_Origin과 유사). 장애 조치(Failover) 응답에는 모니터링 및 디버깅에 사용할 수 있는x-edgeoptimize-fo: 1헤더가 포함됩니다. -
캐싱: Cloudflare는 기본적으로 URL을 기반으로 응답을 캐시합니다. 에이전틱 트래픽은 사람 트래픽과 다른 콘텐츠를 수신하므로 캐시 구성에 이를 고려해야 합니다. 캐시 API 또는 캐시 헤더를 사용하여 캐시된 콘텐츠를 구분하는 것이 좋습니다.
x-edgeoptimize-config헤더가 캐시 키에 포함되어야 합니다. -
속도 제한: Edge Optimize 사용량을 모니터링하고 필요한 경우 에이전틱 트래픽에 대한 속도 제한을 도입하는 것이 좋습니다.
-
테스트: 프로덕션에 배포하기 전에 항상 스테이징 환경에서 구성을 테스트합니다. 에이전틱 트래픽과 사람 트래픽이 모두 예상대로 작동하는지 확인합니다. Edge Optimize 오류를 시뮬레이션하여 장애 조치 비헤이비어를 테스트합니다.
-
로깅: Cloudflare 작업자 로깅을 활성화하여 요청을 모니터링하고 문제를 해결합니다. 실시간 로그를 확인하려면 작업자 > 내 작업자 > 로그로 이동합니다. 작업자는 디버깅을 위해 장애 조치 이벤트를 기록합니다.
문제 해결
x-edgeoptimize-request-id 헤더 없음AGENTIC_BOTS 배열에 있는지 확인합니다.EDGE_OPTIMIZE_API_KEY가 환경 변수와 암호에 올바르게 설정되어 있는지 확인합니다. Adobe에 문의하여 API 키가 활성 상태인지 확인합니다.x-edgeoptimize-request 헤더 검사가 제대로 되어 있는지 확인합니다.TARGETED_PATHS가 올바르게 구성되어 있는지 확인합니다.x-edgeoptimize-fo: 1 헤더FAILOVER_ON_4XX 및 FAILOVER_ON_5XX가 true로 설정되어 있는지 확인합니다. 작업자 로그에서 오류 메시지를 확인합니다.TARGETED_PATHS에 있고(지정된 경우) HTML 페이지 정규 표현식 패턴과 일치하는지 확인합니다.EDGE_OPTIMIZE_TARGET_HOST에 프로토콜(예: https://)이 포함되어 있습니다.https://example.com이 아닌 example.com).방화벽 규칙을 통해 Edge에서 최적화 허용(선택 사항)
CDN에서 WAF 또는 보트 관리자를 사용하는 경우:
-
Edge 서비스에서 최적화 서비스를 통해 원본 콘텐츠를 가져올 수 있도록 WAF 또는 봇 관리자에서
*AdobeEdgeOptimize/1.0*사용자 에이전트를 최적화합니다. -
방화벽에 사용자 에이전트 이외의 추가 확인이 필요한 경우 암호를 생성하고(예:
openssl rand -hex 32):- 다른
x-edgeoptimize-*헤더와 함께 라우팅 규칙에 암호가 포함된x-edgeoptimize-fetcher-key을(를) 추가합니다. x-edgeoptimize-fetcher-key이(가) 같은 암호와 일치하는 요청을 허용하도록 WAF 또는 보트 관리자 규칙을 추가합니다.
- 다른
-
Edge에서 최적화 는 이 헤더를 있는 그대로 전달합니다. — 전체 키 라이프사이클을 소유합니다.
설정 확인
설정을 완료한 후 봇 트래픽이 Edge Optimize로 라우팅되고 있으며 사람 트래픽이 영향을 받지 않는지 확인합니다.
1. 봇 트래픽 테스트(최적화해야 함)
에이전틱 사용자 에이전트를 사용하여 AI 봇 요청을 시뮬레이션합니다.
curl -svo /dev/null https://www.example.com/page.html \
--header "user-agent: chatgpt-user"
성공적인 응답에는 요청이 Edge Optimize를 통해 라우팅되었음을 확인하는 x-edgeoptimize-request-id 헤더가 포함됩니다.
< HTTP/2 200
< x-edgeoptimize-request-id: 50fce12d-0519-4fc6-af78-d928785c1b85
2. 사람 트래픽 테스트(영향을 받지 않아야 함)
일반 사람 브라우저 요청을 시뮬레이션합니다.
curl -svo /dev/null https://www.example.com/page.html \
--header "user-agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36"
응답에는 x-edgeoptimize-request-id 헤더가 없어야 합니다. 페이지 콘텐츠와 응답 시간은 Optimize at Edge를 활성화하기 전과 동일하게 유지되어야 합니다.
3. 두 시나리오를 구분하는 방법
x-edgeoptimize-request-idx-edgeoptimize-fo1).LLM Optimizer UI에서 트래픽 라우팅 상태를 확인할 수도 있습니다. 고객 구성(으)로 이동하고 CDN 구성 탭을 선택합니다.
선택 사항: 스테이징 호스트 이름에서 라우팅을 테스트합니다
프로덕션 라우팅을 활성화하기 전에 더 낮은 환경에서 라우팅을 확인하려는 경우 스테이징 호스트 이름을 구성할 수 있습니다.
요구 사항
- 스테이징 호스트 이름은 프로덕션과 동일한 등록 가능한 도메인에 있어야 합니다(예: 프로덕션이
https://www.example.com인 경우https://staging.example.com). - 사이트당 one 스테이징 도메인만. 저장되면 Adobe에 문의하지 않으면 변경할 수 없습니다.
스테이징 API 키 가져오기
- 고객 구성을 열고 CDN 구성을 선택합니다.
- AI 에이전트에 최적화 배포에서 단계 도메인 추가(또는 스테이징 도메인이 이미 구성된 경우 단계 도메인)를 선택합니다.
https://을(를) 포함한 전체 스테이징 URL을 입력하고 도메인 설정을(를) 선택하십시오.- 확인 대화 상자에서 스테이징 API 키를 복사합니다.
스테이징 API 키를 사용하여 스테이징 환경에 동일한 라우팅 규칙을 배포합니다.
스테이징 보트 트래픽 테스트
https://staging.example.com/page.html을 실제 스테이징 URL 및 경로로 바꿉니다. 성공: 응답에 x-edgeoptimize-request-id 헤더가 포함되어 있습니다.
도움이 필요하면 llmo-at-edge@adobe.com에 문의하세요.
curl -svo /dev/null https://staging.example.com/page.html \
--header "user-agent: chatgpt-user"
사용 가능한 기회, 자동 최적화 워크플로 및 FAQ를 포함하여 Edge에서 최적화에 대해 자세히 알아보려면 Edge에서 최적화 개요로 돌아가십시오.