Apache HTTP Server를 이용해서 같은 서브넷의 다른 기기로 내 컴퓨터 웹 서버에 접속 할 수 있도록 찾아보던 중
Web Server와 WAS의 개념이 모호해서 정리가 필요했다.
Web Server는 HTTP 요청을 받아 정적인 컨텐츠(.html .jpeg .css etc)를 제공하는 컴퓨터 프로그램
⇒ 클라이언트(웹 브라우저, 웹 크롤러)의 요청을 서비스하는 기능
예) 클라이언트에 이미지 파일을 보내는 과정
클라이언트는 HTML 문서를 먼저 받고 그에 맞게 필요한 이미지 파일들을 다시 서버로 요청하면 그때서야 이미지 파일을 받아온다. Web Server를 통해 정적인 파일들을 Application Server까지 가지 않고 앞단에서 빠르게 보내줄 수 있다.
그래서 웹 서버가 필요한 이유는?!
정적인 컨텐츠만 처리하도록 기능을 분배하여 서버의 부담을 줄일 수 있다.
WAS = Web Server + Web Container
DB 조회나 다양한 로직 처리를 요구하는 동적인 컨텐츠를 제공하기 위해 만들어짐
⇒ 프로그램 실행 환경과 DB 접속 기능 제공, 여러 개의 트랜잭션 관리 기능, 업무를 처리하는 비즈니스 로직 수행
- 웹 페이지는 정적 컨텐츠와 동적 컨텐츠가 모두 존재한다.
- 사용자의 요청에 맞게 동적 컨텐츠를 만들어서 제공해야 하는데 이 때 Web Application Server만을 이용한다면 사용자가 원하는 요청에 대한 결과값을 모두 미리 만들어 놓고 서비스를 해야 한다. 하지만 이렇게 수행하기에는 자원이 부족하다.
- 그래서 요청에 맞는 데이터를 DB에서 가져와서 비즈니스 로직에 맞게 그때 그때 결괄르 만들어서 제공함으로써 자원을 효율적으로 사용할 수 있다.
Apache Http Server를 이용한 다른 기기로 내 컴퓨터로 접속
Apache 설치 과정은 여기서 참고했다.
https://jimnong.tistory.com/612
시나리오
(1) 웹 서버 구동 후 내 컴퓨터의 IP 주소 또는 http://127.0.0.1/ 로 접속하기
→ 내 컴퓨터에서 내 컴퓨터 내부의 웹 서버에 접속
(2) 같은 서브넷의 다른 기기로 내 컴퓨터의 웹 서버에 접속
- 내 컴퓨터 내부의 웹 서버에 접속
- 이 단계는 내 컴퓨터에서 내 컴퓨터의 프로그램으로 접속하는 경우이다.
- 같은 서브넷의 다른 기기로 내 컴퓨터의 웹 서버에 접속windows 방화벽을 통해 프로그램 또는 기능 허용에 들어가면 된다.
- 해당 프로그램이 필요로 할 때만 포트를 열어주면 된다.
'웹개발 관련' 카테고리의 다른 글
Creating a Simple CKEditor4 Plugin (0) | 2022.05.12 |
---|---|
CKEditor4를 이용한 html 메타데이터 캔버스 구현 (0) | 2022.05.11 |
한글 웹 폰트 경량화해보기 (0) | 2022.04.27 |
Visual Studio Cod Extension - Better Comments (0) | 2021.07.27 |
CSR(Client Side Rendering)과 SSR(Server Side Rendering)의 차이 (0) | 2021.05.30 |