19년 WMS 회고록/webInfo

웹 기본적인 내용

Dexlee 2021. 11. 3. 17:57

1. GET과 POST

  • GET은 가져오는 것이고 POST는 수행하는 것.
  • 이 개념만 잘 생각하고 있으면 상황에 따라서 어느 정도 선택을 할 수 있음.
    • 물론 그래도 좀 고민되는 예외상황 존재.
  • GET은 Select적인 경향을 가짐.
  • GET은 서버에서 어떤 데이터를 가져와서 보여준다거나 하는 용도이지 서버의 값이나 상태 등을 바꾸지 않음.
  • ex) 게시판의 리스트라던지 글 보기 기능 등.
    • 방문자의 로그를 남긴다거나 글 읽은 횟수를 올려준다거나 하는 건 예외
  • 반면에 POST는 서버의 값이나 상태를 바꾸기 위해서 사용합니다.
  • ex) 글쓰기를 하면 글의 내용이 디비에 저장이 되고 수정을 하면 디비 값이 수정이 되고 이럴 경우에 POST를 사용.

GET의 특징

  • GET은 정보를 조회하기 위한 메서드
  • 서버에게 여러 번 요청을 하더라도 동일한 응답이 돌아와야 한다는 것을 의미.

POST의 특징

  • 서버로 데이터를 전송하기 위해 설계
  • 서버에게 여러 번 요청을 한다면 응답이 항상 동일하다고 볼 수 없음.
  • POST는 서버의 상태나 데이터를 변경시킬 때 사용됨

 

2. 웹 접근성

https://www.wah.or.kr:444/Accessibility/define.asp

: 웹에 대한 표준, 지침 등이 있다.

 

3. http protocol 통신

  • http 프로토콜은 request 1번에 response 1번으로 통신이 이루어지고 connection을 끊어버리는 stateless 프로토콜

4. http 메시지

  • request와 response를 나타냄. request 메시지는 client가 보내고, response 메시지는 server가 보내는 것을 의미.

5. http request

5.0 request line

  • method, href, http version이 header 위에 표시됨

5.1 request headers

-host : 요청하는 웹서버의 주소

-user-agent==web browser

등등

5.2 request body

  • 실제 서버에 전송되는 데이터

 

6. http response

6.0 status

  • http version, status code, 가 header 위에 표시

6.1 response header

  • content-Type:text/html
  • body의 내용물이 뭘로 이루어졌는지를 나타냄. 등등

 

7. http와 https의 차이

  • http를 통해 통신을 하고 있다면 누군가가 내 정보를 볼 수 있다. 하지만 https를 사용한다면 전송되는 내용을 가로챈다고 하더라도 실제 그 안의 정보는 암호화되어 있어서 당사자들만 알 수 있다. https가 아닌 사이트에서 로그인을 요구한다면 그 사이트를 이용하면 안 된다.

 

7.1 http

  • 보안에 취약.

7.2 https == ssl

  • https의 s는 secure로 안전한이라는 뜻이다.

7.3 cache

  • ctrl+f5를 누르면 강제로 cache가 갱신된다.
  • cache-control, pragma는 cache를 제어하는 객체이다.

7.4 cookie and web storage

  • cookie 값을 웹브라우저에 설정하면 접속할 때마다 서버에 상태를 보내서 사용자의 상태를 유지할 수 있고 사용자를 식별할 수 있다. 최근에는 cookie보다 더 많은 정보를 저장하면서 보안으로 더 우수한 web storage라는 기술이 등장했다.

7.5 proxy server

  • 중계서버
  • 또 proxy는 웹 브라우저와 웹 서버에 proxy라는 중계서버를 놓을 수 있다. 중간에 서버가 캐시를 대신해주거나 보안과 관련된 공격을 막아주거나 사용자의 요청을 여러 대의 서비스로 분산해주는 역할을 프록시 서버가 대신해줄 수 있다. 이 외에도 많은 역할을 해준다.

7.6 wireshark

  • 네트워크를 모니터링해주는 기능.

8. hosting

  • server 쪽에서 사용하는 컴퓨터 or 소프트웨어를 제공하는 사업자들을 hosting이라고 부른다. IDC라는 환경에서 비즈니스를 한다. Internet Data Center(건물이다.) 서버가 동작하기에 최적화되어 있는 환경.
  • 서버의 운영을 대행해주는 역할을 함.
  • web hosting (비용이 저렴) (PaaS)
    • 웹 애플리케이션 운영을 위한 모든 것을 제공
    • 장점 : 애플리케이션을 업로드만 하면 된다.
    • 단점 : 웹 애플리케이션을 위한 용도로만 사용.
  • server hosting
    • 컴퓨터를 제공 내가 필요한 것을 직접 설치 운영.
    • 장점 : 자유도가 높아 모든 것을 할 수 있음.
    • 단점 : 직접 운영해야 한다.

9. 클라우드 컴퓨팅

  • hosting과 다른 점은 인프라의 질적/양적 발전
  • 가상화, on-demand
  • 사용량이 일정하다면 hosting도 좋은 선택, 하지만 일정하지 않다면 클라우드가 좋다.

10. servlet

  • server + applet : 서버 쪽에서 수행되는 애플릿
  • servlet의 라이프 사이클 - init(), service(), destroy()
  • 이러한 생명주기를 WAS에서 관리.
  • 자바의 서블릿 - javax.servlet, javax.servlet.http

11. jar

  • 압축파일
  • 여러 개의 클래스 파일을 하나로 묶기 위해 사용.