본문 바로가기

http6

HTTP와 연계하는 웹 서버 1대로 멀티 도메인을 가능하게 하는 가상 호스트 가상 호스트(Virtual Host) 기능을 사용하면 하나의 HTTP 서버에서 여러 개의 웹 사이트를 실행할 수 있음 즉 같은 IP 주소의 다른 호스트명과 도메인명을 가진 여러 개의 웹 사이트가 실행될 수 있음 따라서 HTTP 리퀘스트를 보낼 때는 호스트명과 도메인명을 완전하게 포함한 URI를 지정하거나, Host 헤더 필드에서 지정해야 함 통신을 중계하는 프로그램 프록시 서버와 클라이언트의 양쪽 역할을 하는 중계 프로그램 클라이언트로부터 받은 리퀘스트를 서버에 전송하고, 오리진 서버로부터 받은 리스폰스를 클라이언트에 전송함 리소스 본체를 가진 서버를 오리진 서버(Origin Server)라고 함 중계할 때마다 Via 헤더 필드에 경유한 호스트 정보를 추가.. 2023. 9. 4.
HTTP 상태 코드 상태 코드는 서버로부터 리퀘스트 결과를 전달한다 HTTP 상태 코드란? 클라이언트가 서버에 HTTP 리퀘스트를 보낼 때 서버에서 그 결과가 어떻게 되었는지 알려주는 것 상태 코드의 구조: 3자리 숫자와 설명 상태 코드 클래스: 숫자의 첫 번째 자리 클래스 설명 1xx Informational 리퀘스트를 받아들여 처리 중 2xx Success 리퀘스트를 정상적으로 처리했음 3xx Redirection 리퀘스트를 완료하기 위해서 추가 동작이 필요 4xx Client Error 서버가 리퀘스트 이해 불가능 5xx Server Error 서버에서 리퀘스트 처리 실패 2xx 성공 (Sueccess) 200 OK 클라이언트가 보낸 리퀘스트를 서버가 정상 처리하였음을 나타냄 204 No Content 서버가 리퀘스트.. 2023. 7. 28.
HTTP 통신 HTTP 메시지 공통 구조 메시지 헤더 서버와 클라이언트가 꼭 처리해야 하는 내용과 속성 개행 문자 메시지 바디 꼭 전송되는 데이터 그 자체 메시지 헤더 구성 요소 리퀘스트 라인 혹은 상태 라인 리퀘스트 라인: 리퀘스트에 사용하는 메소드와 URI, HTTP 버전이 포함됨 상태 라인: 리스폰스 결과를 나타내는 상태 코드와 설명, 사용하는 HTTP 버전이 포함됨 헤더 필드: 리퀘스트와 리스폰스의 여러 조건과 속성 등을 나타냄 리퀘스트/리스폰스 헤어 필드, 일반 헤더 필드, 엔티티 헤더 필드 등 인코딩으로 전송 효율을 높이다 HTTP로 데이터를 전송할 때 인코딩(변환)을 하면 전송 효율을 높일 수 있음 메시지: HTTP 통신의 기본 단위로 8비트로 구성되고 통신을 통해 전송됨 엔티티: 리퀘스트랑 리스폰스의 페.. 2023. 7. 21.
웹과 네트워크의 기본 웹은 HTTP로 나타낸다 HTTP (HyperText Transfer Protocol) 웹 문서 전송 프로토콜 HTTP/1.1 버전이 현재 가장 많이 사용되고 있음 네트워크의 기본은 TCP/IP 프로토콜이란? 서로 다른 하드웨어와 운영체제 등을 가지고 서로 통신을 하기 위해 필요한 규칙 TCP/IP란? 인터넷과 관련된 프로토콜 집합의 총칭 TCP/IP 계층화의 장점 사양이 변경되었을 때 해당 계층만 바꾸면 된다. 각 계층 별로 내부 설계를 편하게 할 수 있다. 애플리케이션 계층 ⇒ 트랜스포트 계층 ⇒ 네트워크 계층 ⇒ 링크 계층 송신 측은 애플레이케이션 계층에서부터 내려가고, 수신 측은 반대로 애플리케이션 계층으로 올라감 각 계층을 거칠 때는 반드시 헤더에 해당 계층마다 필요한 정보를 추가함 반대로 수신.. 2023. 7. 13.
[TIL] 2023.03.30 기술면접 스터디, Programmers 문제 풀기 Today I Learned Programmers 문제 풀기 기술면접 스터디 Programmers 문제 풀기 팩토리얼 나의 풀이 function solution(n) { let answer = 1; for ( i = 2; i n ) { return i - 1 } } } for문을 사용했는데 조건문을 뭘로 설정해야 할지 모르겠어서 저번에 찾아봤던 Number.MAX_SAFE_INTEGER (최대 정수값)을 사용했다. for문을 돌리면서 answer에 i를 계속해서 곱하고 if문 조건을 충족하면 값을 반환한다. 다른 사람의 풀이 function solution(n) { var answer = 1 var a = 0 while(answer 2023. 3. 30.
[TIL] 내일배움캠프 React 과정 2022.12.17 Today I Learned React 심화 강의 수강 vercel React 배포에 실패했던 이유 찾기 어제 이런 에러 메시지가 뜨면서 vercel배포에 실패했었는데 뭔가 실마리를 찾은 거 같다..! 내가 이렇게 REACT 폴더 안에 프로젝트를 여러 개 만들어 놓고 REACT 폴더에서 yarn으로 styled-components와 reacr-router-dom을 설치했었다. 그리고 git에 올릴 때는 TO-DO-LIST-REDUX 폴더만 올렸으니 설치된 것들이 반영되지 않은 거였다. 이걸 어떻게 확인할 수 있냐면 package.json 파일을 확인하면 된다. TO-DO-LIST-REDUX 밖에 있는, 그러니까 최상위 폴더 REACT 폴더의 package.json를 보면 react-router-dom이 .. 2022. 12. 17.