한 2달은 지난일이지만, 공유하는 것도 괜찮을 듯 해서 작성합니다.
회사에서 Game 의 version.ini 다운로드시에 cache 의 문제로 웹서버에서 강제로 NoCache header 를 출력하도록 한 적이 있습니다.
setenv.add-response-header = (
"Expires" => "Thu, 01 Jan 1970 00:00:00 GMT",
"Cache-Control" => "no-store, no-cache, must-revalidate, post-check=0, pre-check=0",
"Pragma" => "no-cache"
)
위와 같이 lighttpd 에서 설정을 한 후에, test 까지 마치고 귀가를 했었는데, 새벽에 난리가 나고 말았습니다. 새벽부터 전화가 불같이 오더군요. 직감적으로 어제 설정한 no-cache 가 문제가 된것 같아서 일단, 설정을 rollback 하고나니 역시나 문제가 해결이 되었습니다.

황당한 에러메시지
문제 해결후, 출근을 해서 장애 리포트도 작성할 겸 도대체 왜 문제가 되었는지 검증을 하던 중, 황당함에 어쩔 수 없는 사실을 발견하게 됩니다. IE 또는 WinInet API 로 다운로드를 받을 경우, ini 확장자가 no-cache header 를 받을 경우 WinInet API 차원에서 좌측과 같은 에러 메세지를 출력을 하는 겁니다.
다른 browser 에서는 모두 정상적으로 받아지는데 왜 IE 에서만 이런 문제가 발생할까 고민을 하고 검색을 하다가, 로그를 봐도 200 코드 반환을 했고, 믿을 수가 없어서 packet dump 를 떠 보았는데, 서버측에서도 정상적으로 파일 내용을 보내고 있었고, 심지어는 client 에서도 파일을 받았음에도 불구하고 IE (WinInet API) 만 유독 이런 처리를 하는 것으로 보아서, WinInet 자체적으로 이런 짓거리를 한다고 밖에 단정할 수 없겠더군요. --; 그래서 설정 값을 하나씩 제거하면서 테스트를 해 본바, no-cache 값이 들어갈 경우에만 발생을 하고 있었습니다.
MSDN 의 WinInet 의 Cache 관련 문서를 찾아봐도 이런 언급은 없었는데, 검색을 하다가
http://support.microsoft.com/kb/323308 문서를 발견하게 됩니다. 물론 상관은 없지만 HTTPS protocol 에서의 WinInet API 의 이상 작동에 관한 기술 문서더군요. 순간.. 버그가 또 있었구나.. 하는 암울한 생각만.. T.T 결국에는 장애 리포트만 쓰고선, 다음 부터는 꼭 IE 에서 테스트 하자는 결의만 다지고 허탈함을 달랠길이 없더군요.
혹시라도, Game 관련 회사의 Download Server 를 운영하신다면, Cache-Control header 에 no-cache 를 출력해서 저같은 경우를 당하지 말기를 바라면서 포스팅을 해 봅니다.
Comments List
김정균님께서 패치한 pptpd가 아닌 일반 애들의 경우
<CentOS기준>
echo "ifconfig ppp0 mtu 1500" > /etc/ppp/ip-up.local
chmod 755 /etc/ppp/ip-up.local
해 놓으니 접속할 때 자동으로 mtu값을 바꿔주네요
저 ip-up.local은 뭐 할때 쓰는건가 했었는데
궁금증이 풀렸습니다.
세션하나만 확인해서 다수 접속시에도 정상적으로 되는진 잘 모르겠습니다^^
네.. pptpd에 원래 mppe-mtu-increased옵션이 있는줄 알았는데
김정균님께서 패치하셨더라구요 우선 openvpn으로 놀고 있고
srpm받아서 패치부분을 확인해보려 합니다^^
매번 감사드립니다.
이미 다 하셔놓구선요^^
저도 김정균님 따라잡기(?)를 하고 있는중입니다.
openvpn은 괜찮은데
pptp로 연결하면 네이버가 접속이 안되네요
원인을 찾는중입니다.
naver 에 접속이 되지 않는 문제는 MTU 문제로 알고 있습니다. 아마 구글에서 pptp naver 로 검색하시면 해당 내용을 찾을 수 있을 겁니다.
하도 오래전이라서 기억이 잘 안나는데, 아마도 mppe-mtu-increased (안녕 리눅스의 pptpd 에 패치된 옵션) 으로 처리가 되지 않았었나 기억이 가물가물하게 긴가민가 합니다.
무척이나 기대됩니다..^^;
감사합니다..