본문 바로가기
GOORM

GOORM: Kubernetes-20

by hxunz 2021. 11. 19.
    1. Facts (사실, 객관)
      : 오늘은 웹 서버랑 MariaDB에 대해서 배우고 일주일 동안 배웠었던 웹 서비스 구축에 대한 평가 시험을 보았다.
       
    2. Feelings (느낌, 주관)
      : 계속 서버랑 클라이언트 연결 안되더니 갑자기 https 이 부분 실습할때부터 잘 돼서 실습 제대로 해 볼 수 있었다. 시험은 많이 헷갈려서 쫌 틀렸지만 ,,, 앞으로 더 열심히 해야지. MariaDB는 그냥 슥 훑는 정도로 진도 나갔다.

    3. Findings (배운 점)
      : 웹
       - 웹 브라우저 내에서 보이는 콘텐츠
       - 웹 프로세스의 시작은 클라이언트 웹 브라우저의 요청에서 시작
       - HTTP : WWW를 통해 정보를 주고받을 수 있는 프로토콜로 주로 HTML 문서와 문서에 포함된 이미지 등 개체를 전송하기 위한 프로토콜
       - 정적 콘텐츠 : 요청할 때 마다 데이터가 변경될 필요가 없는 고정 데이터
       - 동적 콘텐츠 : 웹 페이지에 있는 게시판과 같이 사용자의 요청에 따라 다른 결과를 보여주는 것
       - 웹 어플리케이션 모듈 : 웹 서버에서 전달된 페이지를 처리 

      웹 서버 구성
       - ServerRoot : 웹 서버의 기본 디렉토리 위치 지정
       - DocumentRoot : 웹 서버가 웹 서비스를 통해 표시할 디렉토리 지정
       - Listen : 웹 서버가 페이지 요청을 수신할 네트워크 인터페이스 및 포트 지정
       - Include, IncludeOptional : 주 설정 파일 외에 추가 설정을 가지고 있는 다른 파일을 설정에 포함
       - User, Group : 웹 서버 프로세스를 구동할 사용자와 그룹을 지정
       - ServerAdmin : 웹 서버 에러 발생 시 에러에 관한 메일을 수신할 서버 관리자를 지정
       - <Directory> : 특정 경로에 대한 지시어의 그룹
       - AllowOverride : .htaccess 파일에 포함된 설정 항목의 사용 여부 결정
       - Require : 인증된 사용자가 권한을 부여받았는지 확인
       - Options : 특정 디렉토리에서 사용할 수 있는 기능 설정
       - <IfModule> : 특정 모듈의 포함 여부에 따라 조건부로 처리
       - <File> : 특정 파일들을 대상으로 적용
       - ErrorLog, LogLevel : 웹 서버의 오류 로그와 관련
       - LogFormat : 로그에 포함할 항목과 로그 유형 지정
       - CustomLog : 로그 저장경로와 로그 저장 시 사용할 로그 유형 지정

      가상 호스트
       - 구성에 따라 Apache 웹 서버가 여러 웹 사이트를 서비스하도록 구성
       - 이름 기반 가상 호스트 (Name-Base Virtual Host) : 웹 서버에 접속할 때 사용하는 이름을 기반으로 웹 사이트를 구분하는 방식
       - IP 기반 가상 호스트 (IP-Based Virtual Host) , 포트 기반 가상 호스트
       - _default_ 가상 호스트 : 가상 호스트의 특정 주소 대신 _default_ 주소를 사용하여 모든 주소에 대한 접근 설정

      CSR(Certificate Signing Request) 생성
       - 서버 인증서를 발급받기 위해 필요한 서명 요구

      URL
       - ex) https://search.naver.com/search.naver?where=nexearch&sm=top_hty&fbm=1&ie=utf8&query=%EB%A6%AC%EB%88%85%EC%8A%A4
 

리눅스 : 네이버 통합검색

'리눅스'의 네이버 통합검색 결과입니다.

search.naver.com

 -  프로토콜 : https, http, ftp, file + ://
 - 
웹 서버의 주소
 - 
포트 : 일반적인 웹 서비스는 80/TCP. 일반적으로 생략, 특정 포트 지정시 주소 뒤에 입력 ex) http://www.nobreak.co.kr:7777

 - 자원의 경로 : 특정 페이지 또는 특정 자원 요청시 해당 자원의 디렉토리 경로
 - 
파라미터 : ? 기호 이후는 파라미터. 파라미터는 여러 항목의 조합. 각 항목은 변수이름=[값] 형태로 존재하며, 사이에 ‘&’ 기호를 사용하여 구분


URL Encoding(Percent Encoding)
 - 서버 인증서를 발급받기 위해 필요한 서명 요구
 - 한글 기준 1글자당 3Byte

 - 인코딩 대상: 한글, 일본어, 한자 등 다국어, 일부 특수문자들(&,=,?...)

Base64 인코딩
 - 인코딩을 통해 변환된 데이터가 글자로 표현될 수 있는 형태로 바꾸기 위한 인코딩
 - 
모든 데이터를 64개의 경우의 수를 가지는 데이터로 변환
 - Base64 인코딩 과정


웹 서비스 흐름

  1. 클라이언트는  HTTP 요청을 통해 URL을 웹 서버에 전달
  2. 웹 서버는 클라이언트의 HTTP 요청을 접수
  3. 웹 서버는 자신이 가지고 있는 정적 컨텐츠를 클라이언트에게 전송
  4. 웹 서버는 동적 컨텐츠에 대한 요청을 접수할 경우, WA(Web Application)을 통해 처리하도록 요청을 전달
  5. 웹 어플리케이션(WAS 서버, WAM 모듈) 요청에 대하여 전달받고 실행
  6. 웹 어플리케이션은 주로 데이터베이스와 연결해서 필요한 내용을 작성
  7. 웹 어플리케이션은 생성된 결과를 웹 서버로 전달
  8. 웹 서버는 생성된 결과물을 클라이언트에게 HTTP 응답으로 전달


HTTP (HyperText Transfer Protocol)
 - HTML(HyperText Markup Language) 및 관련 컨텐츠를 전송하기 위한 프로토콜
 - 
HTTP 1.1 및 2.0을 주로 사용


Method
 - HTTP 요청 시 HTTP 프로토콜의 첫 번째 부분에 명시된 요청 방식
 - 
대표적인 메소드 : GET, POST, HEAD
 -
TRACE, PUT, DELETE… 등 기타 메소드도 있음 : 대부분 비활성화하여야 함


GET
 - 웹 서버에게 어떤 페이지를 달라고 요청할 때 사용
 - 
서버로 요청과 관련된 데이터를 보낼 때 파라미터를 사용
 - 
파라미터를 사용하기 때문에, 서버로 전달하는 값이 파라미터에 노출
 - 
파라미터로 서버로 전송할 수 있는 데이터의 길이는 제한이 있음
 - 
파라미터를 사용할 경우 서버에서의 처리가 간편

POST
 - 
웹 서버로 데이터를 전송하기 위한 용도로 사용
 - 
서버로 요청을 보낼 때 전달할 내용을 HTTP 본문으로 전송
 - 
보내는 정보가 URL의 파라미터로 노출되지 않음
 - 
많은 양의 데이터를 보낼 수 있음
 - 
서버에서는 GET보다는 처리하기에 부담

HEAD
 - 
헤더만 전송받기 위한 요청
 - 
테스트 용도


요청이 처리된 후 서버는 응답 : HTTP STATUS CODE, HTTP STATUS PHRASE 
 - 널리 알려진 주요 상태 : 

  • 404 NOT FOUND :  요청한 페이지가 웹 서버에 없음
  • 403 FORBIDDEN : 요청한 페이지에 접근이 거부됨
  • 200 OK : 정상적으로 처리됨
  • 500 Server Error : 서버에서 페이지 처리시 에러

 - 상태코드 대역별 의미 :

  • 2xx: 정상적으로 처리됨
  • 3xx: 이동됨, 캐시 이용
  • 4xx: 클라이언트의 요청 에러
  • 5xx: 서버의 처리 에러

 

'GOORM' 카테고리의 다른 글

GOORM: Kubernetes-22  (0) 2021.11.23
GOORM: Kubernetes-21  (0) 2021.11.22
GOORM: Kubernetes-19  (0) 2021.11.18
GOORM: Kubernetes-18  (0) 2021.11.17
GOORM: Kubernetes-17  (0) 2021.11.16

댓글