[서블릿/JSP] 톰캣 8.0 이하에서 HTTP Response 메시지에서 Server 값 바꾸기
톰캣 8.0 이하에서 HTTP Response 메시지에서 Server 값 바꾸기HTTP 응답메시지의 헤더중 Server라는 속성이 있고 이 값은 웹서버 제품의 이름을 알려줍니다. 톰캣은 기본적으로 Apache-Coyote라는 값을 응답하도록 되어있습니다.아래는 톰캣에게 요청을 보냈을때 응답 메시지를 캡쳐한것입니다.HTTP/1.1 200 OKServer: Apache-Coyote/1.1Set-Cookie: JSESSIONID=A07D4A517740C52E01F502DBF8DE5C0C; Path=/; HttpOnlyContent-Type: text/html;charset=UTF-8Content-Length: 142Date: Tue, 09 Jul 2019 05:01:43 GMT그러나 보안적인 측면에서 보았을때..
웹[Web]
2019. 3. 28. 10:25
[HTTP] HTTP 헤더 중 Content-Type 헤더와 Accept 헤더의 용도와 차이점
Content-Type 헤더Content-Type은 말그대로 HTTP 메시지(요청과 응답 모두)에 담겨 보내는 데이터의 형식을 알려주는 헤더입니다. 세상에 모든 브라우저와 모든 웹서버가 그렇다고는 말할 수 없겠지만 대부분의 HTTP 표준 스펙을 따르는 브라우저와 웹서버는 우선적으로 저 Content-Type 헤더를 기준으로 HTTP 메시지에 담긴 데이터를 분석하고 파싱할것입니다.만약 Content-Type 헤더가 없다면 데이터를 전송하는쪽(브라우저나 웹서버)에서는 특정한 형식의 데이터일지라도 받아들이는 쪽에서는 단순 텍스트 데이터라고밖에 생각할 수 없을것이며, 이를 분석하고 파싱하는 프로그램을 별도로 작성해주어야 겠지요.그러나 여기서 알아야할 점은 HTTP 요청의 경우 GET방식인 경우에는 무조건 URL..
웹[Web]
2019. 1. 23. 12:52
[HTTP] HTTPS 사용시 혼합 콘텐츠(Mixed Content) 및 안전하지 않은 콘텐츠에 대한 설명
관련글[Tistory] 티스토리 블로그 HTTPS 적용 차단된 콘텐츠 및 안전하지 않은 컨텐츠 차단 해결 방법[Tistory] 티스토리 블로그 HTTPS 적용하기. HTTPS가 무엇이길래?[HTTP] HTTPS란? 비전공자를 위한 HTTPS 개념 알아보기HTTPS 사용시 혼합 콘텐츠(Mixed Content) 및 안전하지 않은 콘텐츠에 대한 설명티스토리 블로그를 운영하면서 통신 방식을 HTTP에서 암호화된 HTTPS로 변경하게 되면서 알게된 사실들 중 혼합 콘텐츠(Mixed Content)에 대한 내용을 정리하고자 글을 작성합니다. 글의 원문은 구글 개발자문서에서 가져온 것이므로 글 하단의 참고글 링크를 참고해주세요.혼합 콘텐츠란(Mixed Content)?혼합 콘텐츠는 HTTPS를 통해 접속한 사이트에..
툴 [Tool]
2018. 12. 18. 22:04
[Chrome] 크롬 개발자모드 Network 모니터링 새로고침시에도 기록 남겨두기
크롬 개발자모드 Network 모니터링 새로고침시에도 기록 남겨두기크롬 개발자모드에 보면 네트워크 트래픽, 즉 HTTP 메시지 전송 기록을 볼 수 있습니다. 웹 어플리케이션 개발자라면 이곳에서 상당히 자주 많은 정보를 얻곤 합니다.그런데 크롬 개발자 모드를 통해 네트워크 트래픽을 보다 보면 새로고침이나 리다이렉션이 되는 경우에 기록까지 모두 지워져 버리는 경우가 있습니다. 예들들어 리다이렉션 되는 과정을 보고싶은 경우가 있을것입니다.이럴때는 매우 간단하게도 Preserve log에 체크만 해주면 새로고침시에도 이전 HTTP 기록이 새로고침 되지 않고 남아있게 됩니다.
웹[Web]
2018. 9. 12. 23:36
[HTTP] HTTPS란? 비전공자를 위한 HTTPS 개념 알아보기
HTTPS란 뭘까? 비전공자 수준으로 알아보도록 하자HTTPS란 무엇일까요? SSL? HTTP? HTTPS? 비 전공자는 용어마저도 너무나 헷갈립니다. 이번 글에서는 HTTPS에 대해서 알아보도록 합니다. 단! 이번 글은 전공자를 위한 설명이 아닌 비 전공자를 위한 설명입니다. 미리 말하자면 많은 설명이 생략되어 있으며, 암호화 알고리즘이나 암호화 키에 대한 내용은 실제 HTTPS에서 사용되는 내용과 다릅니다. 그러나 큰 개념을 쉽게 설명하기 위함이므로 양해 부탁드립니다.물론 이렇게 많은 설명을 줄이고 내용을 쉽게 바꾸었다고 해도 한 번 읽는것만으로는 이해가 되지 않을것입니다. 따라서 여러번 읽어보시고 궁금증이 생기는 내용은 댓글 또는 비공개 댓글로 질문을 해주시거나 글 최하단의 이고잉님의 링크를 추가로..
웹[Web]
2018. 9. 11. 00:21
[HTTP] HTTP 쿠키란(Cookie)? 쿠키 등장 배경 그리고 쿠키와 세션의 차이점.
쿠키란(Cookie)? 쿠키 등장 배경쿠키는 HTTP 환경(웹환경)에서 상태를 유지하기 위한 기술입니다. HTTP의 특성상 매번 발생하는 HTTP 트랜잭션은 별개의 요청으로 판단하기 때문에 상태를 가질수 없습니다. 예를 들어 www.exam.com/page1 요청 후 www.exam.com/page2 를 요청하는 경우 이 둘의 요청은 서로 연관성을 가지지 않고 독립적이며, page1에서 만들어진 데이터는 page2를 요청할때 유지되지 않는 것입니다.이러한 사실때문에 상태를 가지지 않는다고 하여 HTTP를 stateless protocol(무상태 프로토콜)이라고 합니다. 그러나 웹 서비스를 개발하다 보면 필연적으로 여러 요청(또는 여러 페이지)에 걸쳐 상태를 유지해야 하는 경우가 있습니다.최초 페이지에서 ..
웹[Web]
2018. 2. 15. 00:30
[HTTP] 리다이렉트(Redirect)란?
HTTP 리다이렉트(Redirect)란?리다이렉트란 말 그대로 re(다시) + 지시하다(direct) 다시 지시하는 것입니다.예를 들어 브라우저가 www.test.com/page1 URL을 웹 서버에 요청했습니다. 서버는 HTTP 응답 메시지를 통해 "www.test.com/page2 로 다시 요청하세요~" 라고 브라우저에게 다른 URL(길, 방향) 을 지시할 수 있습니다.HTTP 리다이렉트는 HTTP 표준으로 정의 되어 있는데 최초 요청을 받은 웹서버는 HTTP 응답 상태코드로 302를 보내고 응답 메시지 헤더 중 Location 값으로 리다이렉트 되어야 할 주소를 설정해 리턴합니다.브라우저등의 웹 클라이언트는 HTTP 응답 메시지의 상태코드가 302라는 것을 보고 리다이렉트라는 것을 인지하여 Loca..
Servlet&Jsp
2018. 2. 11. 16:32
[서블릿/JSP] 웹 환경에서 데이터 인코딩 규칙 및 톰캣 한글 처리
이전글[서블릿/JSP] 한글 깨지는 경우, 한글 인코딩 처리HTTP 요청 방식에 따른 GET과 POST 방식 차이웹 환경에서는 브라우저에서 서버로 요청 파라미터를 전송할 때 크게 GET 방식과 POST 방식 두 가지로 데이터를 전송하게 됩니다.GET 방식의 경우에는 HTTP 메시지 BODY가 없기 때문에 URL 뒤에 ?를 붙이고 그 뒤에 요청파라미터를 전송하며, POST 방식의 경우 HTTP 메시지 BODY에 요청 데이터를 넣어 전송합니다.URL에는 길이 제한이 있기 때문에 GET 방식의 경우 데이터 전송시 데이터 길이에 제한이 있으며, (브라우저나 웹서버에 따라 제한이 없는 경우도 있음) 브라우저 URL 창에 요청 데이터가 노출되는 등의 단점이 있습니다.따라서 중요한 데이터들은 POST 방식으로 전송하..
Servlet&Jsp
2018. 2. 10. 23:30
[서블릿/JSP] JSP request 기본객체[2] http 요청 헤더 처리 방법
이전글[서블릿/JSP] JSP request 기본객체JSP request 기본 객체로 http 요청 헤더 처리 방법reqeust 객체를 통해 HTTP 요청 메세지의 헤더 정보를 다룰 수 있습니다.HTTP 요청 메세지의 헤더는 현재 요청에 대한 정보들을 담고 있으므로 이러한 정보가 필요한 경우에 사용합니다.request 내장객체(javax.servlet.http.HttpServletRequest) 의 헤더 관련 메서드메서드리턴 타입설명getHeader(String headerName)String지정한 이름의 헤더값을 구한다.getHeaders(String name)String지정한 이름의 헤더값들을 담은 Enumeration 객체를 리턴한다.getIntHeader(String name)String지정한 이..
NodeJS
2018. 1. 31. 08:00
[Node.js] NodeJS 웹서버에서 클라이언트에게 파일 응답하기
참고글[NodeJS] - [Node.js] NodeJS 파일 입출력 [1][Node.js] NodeJS 파일 입출력 [2][Node.js] NodeJS 파일 입출력 [3] 스트림 단위 입출력[Node.js] NodeJS http 모듈 [2] HTTP 응답하기 및 server 이벤트NodeJS 클라이언트에게 파일 전송하기웹서버는 클라이언트에게 웹페이지(html)를 응답하기도 하지만 동영상이나, 이미지, 워드문서 같은 미디어 파일을 응답하기도 합니다. 예를 들어 NodeJS로 게시판을 만든 경우에 회원이 올린 게시글의 첨부파일이 있을 수 있습니다.회원이 해당 게시글의 첨부파일을 웹서버에게 요청하게 되면 서버에서는 해당 파일을 브라우저에게 응답해주어야 할 것입니다. 여기서는 이미지 파일을 응답하는 것으로 하겠..