사용자 에이전트를 하위 문자열 'MSIE 8'과 일치시킬 때 다음 조건은 404 리디렉션을 유발합니까?
#Begin IE8 Hack if ($http_user_agent ~* 'MSIE 8') { #set $hack "I"; } #End IE8 Hack
주석 처리하면 if ($http_user_agent...
404 리디렉션이 중지됩니다.
무슨 일이야?
컬 요청
컬 -XGET 'https://localhsot/[이메일 보호됨]' -v -A'Mozilla/4.0(호환; MSIE 8.0; Windows NT 6.1; WOW64; Trident/4.0; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; 미디어 센터 PC 6.0; .NET4.0E)'
환경
- 엔진엑스 1.6.2
- 리눅스 데비안 7 3.2.0-4-amd64
전체 구성
server {
listen 80 default_server;
root /var/www/frontend;
#Begin IE8 Hack
error_page 418 = @PATCH;
location @PATCH {
proxy_method PATCH;
proxy_pass http://0.0.0.0:3001;
proxy_redirect default;
}
#End IE8 Hack
location / {
#Begin IE8 Hack
if ($http_user_agent ~* 'MSIE 8') {
#set $hack "I";
}
#if ($request_method = PUT) {
# set $hack "${hack}E";
#}
#if ($hack = IE) {
# return 418;
#}
#End IE8 Hack
proxy_pass http://0.0.0.0:3001/v1/;
proxy_redirect default;
}
}