ngx_http_browser_module
ngx_http_browser_module 모듈은 “User-Agent” 요청 헤더 필드에 따라 값이 달라지는 변수를 생성합니다.
$modern_browser
브라우저가 최신으로 확인된 경우, modern_browser_value 명령에서 설정한 값과 같습니다.
$ancient_browser
브라우저가 최신이 아닌 경우, ancient_browser_value 명령에서 설정한 값과 같습니다.
$msie
브라우저가 어떤 버전의 MSIE로 확인된 경우 “1”입니다.
예제 구성
인덱스 파일 선택:
modern_browser_value "modern.";
modern_browser msie 5.5;
modern_browser gecko 1.0.0;
modern_browser opera 9.0;
modern_browser safari 413;
modern_browser konqueror 3.0;
index index.${modern_browser}html index.html;
오래된 브라우저에 대한 리디렉션:
modern_browser msie 5.0;
modern_browser gecko 0.9.1;
modern_browser opera 8.0;
modern_browser safari 413;
modern_browser konqueror 3.0;
modern_browser unlisted;
ancient_browser Links Lynx netscape4;
if ($ancient_browser) {
rewrite ^ /ancient.html;
}
Directives
Syntax: ancient_browser string ...;
Default: —
Context: http, server, location
지정된 하위 문자열을 “User-Agent” 요청 헤더 필드에서 발견한 경우, 해당 브라우저는 최신이 아닌 것으로 간주합니다. 특수 문자열 “netscape4″는 정규식 “^Mozilla/[1-4]”에 대응합니다.
Syntax: ancient_browser_value string;
Default: ancient_browser_value 1;
Context: http, server, location
$ancient_browser 변수에 대한 값을 설정합니다.
Syntax: modern_browser browser version;
modern_browser unlisted;
Default: —
Context: http, server, location
브라우저가 최신으로 간주된 버전부터 지정합니다. 브라우저는 다음 중 하나일 수 있습니다. msie, gecko(Mozilla 기반 브라우저), opera, safari, or konqueror.
버전은 다음과 같은 형식으로 지정할 수 있습니다. X, X.X, X.X.X 또는 X.X.X.X. 각 형식의 최댓값은 각각 4000, 4000.99, 4000.99.99, 4000.99.99.99입니다.
특수 값 unlisted는 modern_browser 및 ancient_browser 명령으로 나열되지 않은 경우, 특정 브라우저를 최신으로 간주하도록 지정합니다. 그 외에는 최신이 아닌 브라우저로 간주됩니다. 요청의 헤더에서 “User-Agent” 필드를 제공하지 않을 경우, 해당 브라우저는 목록에 없는 것으로 간주합니다.
Syntax: modern_browser_value string;
Default: modern_browser_value 1;
Context: http, server, location
$modern_browser 변수에 대한 값을 설정합니다.