취미와 밥줄사이

[Network] What is a web server 본문

Infrastructure/Network

[Network] What is a web server

취미와 밥줄사이 2021. 11. 19. 16:35

요약

웹 서버라는 용어는 하드웨어나 소프트웨어, 또는 둘 다 함께 작동하는 것을 의미할 수 있습니다.

1. 하드웨워 측면에서, 웹 서버는 컴퓨터입니다. 웹 서버 소프트웨어와 웹 사이트의 부품 파일을 저장하고 있는 컴퓨터를 의미합니다(HTML document, images, CSS stylesheets, and JavaScript files). 웹 서버는 인터넷과 연결하고 웹에 연결된 다른 기기와 물리적인 데이터 교환을 지원합니다.

 

2. 소프트웨어 측면에서, 웹 서버에는 웹 사용자가 호스팅된 파일에 접근하는 방법을 제어하는 여러 부분이 있습니다. 최소한으로, 이것은 HTTP 서버입니다. HTTP 서버는 URL(web addresses)과 HTTP(the protocol your browser uses to view webpages)를 이해하는 소프트웨어입니다.

 

HTTP 서버는 서버가 저장하는 웹 사이트의 도메인 이름을 통해 접근할 수 있으며, 그리고 이러한 호스팅된 웹 사이트의 콘텐츠를 최종 사용자의 장치로 전달합니다.

 

가장 기본적인 수준에서 브라우저에 웹 서버에서 호스팅되는 파일이 필요할 때마다 브라우저는 HTTP를 통해서 파일을 요청합니다. 요청이 정확한 (hardware) 웹서버에 도착할 때, 요청된 문서를 찾습니다. 그리고 다시 브라우저에게 HTTP를 통해 전송합니다. 만약 서버에서 요청된 파일을 찾지 못한다면, 파일 대신 404 response을 반환합니다.

 

 

https://developer.mozilla.org/en-US/docs/Learn/Common_questions/What_is_a_web_server

 

웹 사이트를 출시하기 위해서 정적이거나 동적인 웹 서버가 필요합니다.

 

정적 웹 서버 또는 스택은 컴퓨터(하드웨어)와 HTTP 서버(software)로 구성됩니다. 정적이라고 부릅니다. 왜냐하면 서버가 호스팅된 파일을 있는 그대로 브라우저에게 보내기 때문입니다.

 

동적인 웹 서버는 정적인 웹 서버와 추가적인 소프트웨어로 구성됩니다. 대부분 일반적으로 데이터베이스와 어플리케이션 서버입니다. 우리는 이것을 동적인 서버라고 부릅니다. 어플리케이션 서버는 HTTP 서버를 통해 당신의 브라우저에게 content를 전송하기 전에 호스팅된 파일을 업데이트하기 때문입니다.

 

예를 들어 브라우저에서 당신이 보는 최종 웹 페이지를 생산하기 위해서 어플리케이션 서버는 데이터베이스로 부터 content를 HTML template에 채웁니다. MDN이나 Wikipedia와 같은 사이트에는 수천개의 웹페이지가 있습니다. 일반적으로 이러한 종류의 사이트들은 몇 개의 HTML 템플릿과 거대한 데이터베이스로 구성되어집니다. 수 천개의 정적인 HTML 문서가 아니라, 이 설정을 사용하면 콘텐츠를 더 쉽게 유지 관리하고 전달할 수 있습니다.

 

웹 페이지를 가져오기 위해서 브라우저는 웹 서버에 요청을 보냅니다. 그리고 웹 서버는 자신의 저장공간에 요청된 파일을 검색합니다. 파일을 찾자마자 서버는 읽습니다. 그리고 요구대로 처리합니다. 그리고 브라우저에게 전송합니다. 

 

Hosting files

1. 웹 서버는 웹사이트의 파일, 즉 이미지, CSS 스타일시트, JavaScript 파일, 글꼴 및 비디오를 포함한 모든 HTML 문서 및 관련 자산을 저장해야 합니다.

 

기술적으로 모든 파일을 자신의 컴퓨터에 호스팅할 수 있지만 다음과 같은 이유로 전용 웹 서버에 모든 파일을 저장하는 것이 훨씬 더 편리합니다.

 

  • 전용 웹 서버는 일반적으로 더 많이 사용가능합니다. (실행중)
  • 다운타임 및 시스템 문제를 제외하고 전용 웹 서버는 항상 인터넷에 연결되어 있습니다.
  • 전용 웹 서버는 항상 동일한 IP 주소를 가질 수 있습니다. 이를 전용 IP주소라고 합니다. (모든 ISP가 홈 라인에 고정 IP 주소를 제공하는 것은 아닙니다)
  • 전용 웹 서버는 일반적으로 타사에서 유지 관리합니다.

 

HTTP를 통한 통신

웹 서버는 HTTP(Hypertext Transfer Protocol)를 지원합니다. 이름에서 알 수 있듯이 HTTP는 두 컴퓨터 간에 하이퍼텍스(링크된 웹 문서)를 전송하는 방법을 지정합니다.

 

 HTTP는 클라이언트와 서버가 통신하는 명확한 규칙을 제공합니다. 

 

일반적으로 클라이언트만 HTTP 요청을 하고 서버에만 합니다. 서버는 클라이언트의 HTTP 요청에 응답합니다. 서버는 요청되기 전에 서버 푸시라는 메커니즘을 통해 클라이언트 캐시에 데이터를 채울수도 있습니다.

 

HTTP를 통해 파일을 요청할 때 클라이언트는 파일의 URL을 제공해야 합니다.

 

웹 서버는 최소한 오류 메시지와 함께 모든 HTTP 요청에 응답해야 합니다.

 

 

 

 

 

REFERENCE

https://developer.mozilla.org/en-US/docs/Learn/Common_questions/What_is_a_web_server

 

What is a web server? - Learn web development | MDN

The term web server can refer to hardware or software, or both of them working together.

developer.mozilla.org

 

'Infrastructure > Network' 카테고리의 다른 글

[ Network ] 네트워크 스위치란  (0) 2022.03.04
[Network] 와이어샤크 설치 및 사용법  (0) 2022.01.26
[Network] 소켓(SOCKET) 통신이란  (0) 2021.11.19
[Network] TCP 연결과정  (0) 2021.11.19
[Network] 쿠키와 세션  (0) 2021.11.19