답변은 아니고 그냥 의견입니다.
RFC 보시고 어련히 알아서 하셨겠지만...
요청 메시지의 끝부분에 \r\n 을 한 번 더 넣으셨는지...^^
Accept-Encoding: gzip, deflate\r\n
Connection: keep-alive\r\n
\r\n <-- 이 줄입니다.
요청 메시지 맨 끝에 내용없이 \r\n 만 들어가면 웹서버가 요청이 끝난 것으로 인식하고 응답합니다.
그렇지 않으면 다음 메시지가 들어오도록 기다리다가 타임아웃이 되면 끊어버립니다.
김진수 님이 쓰신 글 :
: 안녕하세요 김진수입니다.
:
: 테스트 환경은 Moacon(마이컴) + Ethernet module, wireshark, ipad, web server 입니다.
: 설명에서 말이 짧아도 너그러이 봐주세요.
:
: 1. Moacon + Ethernet module 에 있는 서버 예제를 테스트 하였습니다.
: 192.168.0.16 할당 후 잘 동작하는 것을 확인하였습니다.
:
: Listening -> Established -> Closing -> Closed -> Listening
:
: 2. co2, temp, hum 을 기록할 수 있는 웹서버 구축
: 브라우저에서 테스트, DB에 잘 들어가짐
:
http://192.168.0.3/sensor/insert.do?co2=1111&temp=12.3&hum=43.2
:
: 3. 같은 컴퓨터에서 테스트할때 wireshark에 패킷을 잡아내지 못하여 ipad 이용
: wireshark로 패킷 잡아내기, 아래와 같음
: DB에 잘 들어가짐
:
: GET /sensor/insert.do?co2=1688&temperature=13.2&humidity=40.2 HTTP/1.1
: Host: 192.168.0.3
: User-Agent: Mozilla/5.0 (iPad; CPU OS 5_0 like Mac OS X) AppleWebKit/534.46 (KHTML, like Gecko) Version/5.1 Mobile/9A334 Safari/7534.48.3
: Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
: Cache-Control: max-age=0
: Accept-Language: ko-kr
: Accept-Encoding: gzip, deflate
: Connection: keep-alive
:
:
: HTTP/1.1 200 OK
: Server: Apache-Coyote/1.1
: Accept-Ranges: bytes
: ETag: W/"0-1318690198489"
: Last-Modified: Sat, 15 Oct 2011 14:49:58 GMT
: Content-Type: text/html
: Content-Length: 0
: Date: Fri, 21 Oct 2011 06:16:06 GMT
:
: 4. Moacon + Ethernet module 이용하여 같은 요청을 서버로 보냄
: wireshark로 패킷 잡아냄
:
: GET /sensor/insert.do?co2=1688&temperature=13.2&humidity=40.2 HTTP/1.1
: Host: 192.168.0.3
: Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
: Cache-Control: max-age=0
: Accept-Language: ko-kr
: Accept-Encoding: gzip, deflate
: Connection: keep-alive
:
: ** 응답이 없음... 서버도 반응 안함, 당연히 DB에 안들어 가짐.
:
: Moacon 응답 상황
:
: Connected->Established->....(반응없음) -> Closing -> Closed
:
: ** 마치 인터넷 창에서 주소를 넣고 요청시 한참동안 무응답하다 연결 못함 이라고 나오는 것 같음.
:
:
: 5. 예상 문제점
: 1) 잘못된 요청을 보낸경우...
: 캡쳐한 것을 User-Agent 빼고 똑같이 했는데 안됨. 검색을 해서 조사할 수록 가능성이 낮음.
:
: 2) 서버와 주고 받고 확인하는 무엇인가 있는데 내가 처리 안해준 경우...
: 이것은 잘 모르겠음.
:
:
: ** 왜 서버가 응답을 안해줄까요?