RequestOrbit

실전 리디렉션 예제

개발, API 전환, CDN 이전에 활용할 수 있는 예제입니다.

스테이징 API를 로컬 서버로 보내기

/v1/ 뒤의 경로를 캡처 $1로 유지합니다. 애플리케이션 빌드를 바꾸지 않고 실제 프런트엔드를 로컬 API나 역방향 프록시에 연결할 때 유용합니다.

로컬 서버가 처리하는 메서드만 선택하고 요청 출처를 app.example.com으로 제한하세요.

            Match type    Simple wildcard
Match         https://api.staging.example.com/v1/*
Resources     XMLHttpRequest
Methods       GET, POST, PUT, PATCH, DELETE
Initiator     app.example.com
Action        Redirect
Destination   http://localhost:3000/v1/$1

https://api.staging.example.com/v1/users/42
→ http://localhost:3000/v1/users/42
          
관리하는 사이트를 새 CDN으로 이동하기

스크립트, 스타일, 이미지, 글꼴의 전체 경로를 유지한 채 새 호스트로 이동합니다. 사이트 코드를 수정하는 동안 임시 호환 브리지로 사용할 수 있습니다.

이 규칙은 항상 리디렉션하며 장애 조치가 아닙니다. 새 CDN이 실패해도 이전 CDN으로 돌아가지 않습니다.

            Match type    Simple wildcard
Match         https://static.legacy.example.com/*
Resources     Script, Stylesheet, Image, Font
Initiator     www.example.com
Action        Redirect
Destination   https://cdn.example.com/$1

https://static.legacy.example.com/assets/app.css
→ https://cdn.example.com/assets/app.css
          
정규식 캡처로 읽기 전용 API 버전 연결하기

두 캡처 그룹이 리소스 종류와 식별자를 유지하면서 /v1/을 /v2/로 바꿉니다. GET만 허용해 쓰기 의미가 바뀌는 일을 피합니다.

저장할 때 현재 브라우저가 정규식 지원을 확인합니다. 각 *가 보존할 한 부분을 명확히 뜻한다면 간단한 와일드카드가 더 이해하기 쉽습니다.

            Match type    Regular expression
Match         ^https://api\.example\.com/v1/(users|projects)/([^?]+)$
Resources     XMLHttpRequest
Methods       GET
Initiator     app.example.com
Action        Redirect
Destination   https://api.example.com/v2/$1/$2

https://api.example.com/v1/projects/alpha
→ https://api.example.com/v2/projects/alpha
          
회귀 테스트에서 프로덕션 번들 하나만 교체하기

정확한 URL 필터로 단일 스크립트만 로컬 디버그 빌드로 바꿀 수 있습니다.

직접 관리하는 앱에서만 사용하세요. HTTPS 페이지라면 로컬 HTTPS 서버가 혼합 콘텐츠 제한을 피하는 데 도움이 됩니다.

            Match type    URL filter
Match         https://app.example.com/assets/checkout.js
Resources     Script
Initiator     app.example.com
Action        Redirect
Destination   http://localhost:5173/checkout.js
          
예제를 사용하기 전에

모든 예제는 문서용 example.com 도메인을 사용합니다. 직접 관리하는 주소로 바꾸고, 규칙을 끈 상태에서 실제 URL 몇 개를 테스트하세요.

리디렉션과 요청 헤더는 페이지가 실제로 받는 내용을 바꿉니다. 리소스 유형과 요청 출처를 좁혀 다른 사이트에 영향을 주지 않도록 하세요.

Redirect가 하지 못하는 일

모든 조건이 맞으면 즉시 리디렉션합니다. 404를 기다리거나 응답 본문을 검사하거나 네트워크 실패 뒤 대상을 고르거나 JavaScript로 URL을 계산할 수 없습니다.

  • 대상은 HTTP 또는 HTTPS여야 합니다.
  • 간단한 와일드카드와 정규식 캡처는 $1부터 $9까지 참조합니다.
  • 쿼리 순서, 디코딩, 반복 키는 자동 정규화되지 않습니다.
  • 자기 자신으로의 리디렉션과 감지된 순환은 차단됩니다.
처음부터 개인정보를 보호합니다

규칙은 브라우저에만 저장됩니다. 분석 도구도, 규칙을 처리하는 원격 서비스도 없습니다.