이번 소식
Cloudflare가 Rules 조건식에서 요청 정보끼리 직접 비교하는 기능과 coalesce() 함수를 추가했습니다. 규칙은 들어오는 요청이 어떤 조건에 맞는지 판단하는 표현식입니다. 이제 비교 대상에 고정된 값뿐 아니라 다른 필드나 함수의 계산 결과를 쓸 수 있고, 필요한 값이 없을 때 사용할 대체값도 지정할 수 있습니다.
주요 변경
- 양쪽에 변하는 값 사용: 같음·다름과 크기 비교에서 오른쪽 값으로 요청 필드, 배열에서 꺼낸 값, 함수 결과를 사용할 수 있습니다. 공식 문서는 현재 요청 경로와 원래 경로를 비교하거나, 경로 길이와 쿼리 문자열 길이를 비교하는 예를 제시합니다.
- 지원 연산자: 대상은
eq,ne,lt,le,gt,ge입니다. 양쪽 값은 같은 단일 값 자료형이어야 하며, 연산자마다 허용하는 자료형은 다릅니다. 이번 지원을 모든 검색·패턴 연산자로 확대해서 해석하면 안 됩니다. - 누락값 대체:
coalesce()는 왼쪽부터 확인해nil이 아닌 첫 번째 인수를 반환합니다. 최소 두 개의 인수가 필요하고 자료형은 같아야 합니다. 모두 값이 없으면 결과도nil입니다.
영향 대상과 활용
Cloudflare에서 웹 요청 처리 규칙을 관리하는 팀이 대상입니다. 이전에 정해 둔 문자열이나 숫자와만 비교하던 조건을, 같은 요청 안의 서로 다른 정보에 따라 판단하는 형태로 구성할 수 있습니다. 예를 들어 현재 주소 경로와 원래 경로가 다른지 확인하는 조건을 표현할 수 있습니다.
공식 예제는 요청에 expected_path라는 값이 있으면 그 값을 쓰고, 빠져 있으면 /를 대신 선택해 실제 요청 경로와 비교합니다. 이름이 같은 입력이 항상 온다고 가정하지 않고, 빠진 경우에 사용할 값을 조건식 안에 명시하는 방식입니다. 함수가 선택한 값은 비교에 사용됩니다.
사용 전 확인할 점
nil은 값이 없는 상태를 뜻합니다. 빈 문자열이나 숫자 0처럼 값이 존재하는 경우까지 전부 대체하는 기능으로 이해하면 안 됩니다. 실제 입력의 자료형과 값이 없는 경우를 나눠 확인해야 합니다.
이번 발표는 조건을 작성하는 표현식의 지원 확대입니다. 기존 규칙이 자동으로 바뀌거나 요청 차단 동작이 일괄 활성화된다는 공지는 아닙니다. 적용할 제품에서 사용 가능한 필드와 연산자를 확인하고, 기존 조건의 의도에 맞는지 검토해야 합니다. 이 기사에서는 운영 규칙을 변경하거나 실제 요청으로 실행 시험을 하지는 않았습니다.
공식 출처·발표 시점
공식 공지일은 2026년 10월 1일, 두 공지의 RSS 게시 시각은 09:00 KST입니다. coalesce() 추가 공지, 함수 문서, 동적 비교 문서를 함께 확인했습니다.
새 글 받아보기
RSS 리더에서 BlogFlow의 새 글을 확인할 수 있습니다.