StripPrefixRegex
본문
StripPrefixRegex
stripPrefixRegex 미들웨어는 매칭된 경로 접두사를 제거하고 X-Forwarded-Prefix 헤더에 저장합니다.
Tip
백엔드가 루트 경로(/)에서 수신하지만 특정 접두사로 노출되어야 한다면 stripPrefixRegex 미들웨어를 사용하세요.
구성 예시
구조화된 (YAML)
http:
middlewares:
test-stripprefixregex:
stripPrefixRegex:
regex:
- "/foo/[a-z0-9]+/[0-9]+/"
구조화된 (TOML)
[http.middlewares]
[http.middlewares.test-stripprefixregex.stripPrefixRegex]
regex = ["/foo/[a-z0-9]+/[0-9]+/"]
Labels
labels:
- "traefik.http.middlewares.test-stripprefixregex.stripprefixregex.regex=/foo/[a-z0-9]+/[0-9]+/"
Tags
{
//..
"Tags" : [
"traefik.http.middlewares.test-stripprefixregex.stripprefixregex.regex=/foo/[a-z0-9]+/[0-9]+/"
]
}
-
Kubernetes
apiVersion: traefik.io/v1alpha1
kind: Middleware
metadata:
name: test-stripprefixregex
spec:
stripPrefixRegex:
regex:
- "/foo/[a-z0-9]+/[0-9]+/"
구성 옵션
| Field | Description | Default | Required |
| regex | 요청 URL에서 경로 접두사를 매칭하는 정규식 목록. 예를 들어 /products는 /products/shoes와 /products/shirts도 매칭해요. 자세한 내용은 여기. | | No |
regex
백엔드가 자산(예: 이미지나 JavaScript 파일)을 제공한다면, X-Forwarded-Prefix 헤더를 사용해 상대 URL을 구성할 수 있어요. 앞선 예시를 사용하면, 백엔드는 /products/shoes/image.png를 반환해야 합니다(/images.png가 아니라요. Traefik이 그것을 같은 백엔드와 연결하지 못할 가능성이 높아요).
Tip
정규식과 치환은 Go Playground나 Regex101 같은 온라인 도구로 테스트할 수 있어요.
YAML 안에서 정규식을 정의할 때는 이스케이프된 문자를 두 번 이스케이프해야 합니다: example\.com은 example\\\\.com으로 적어야 해요.