[스프링부트 #0] 웹 서버(Apache)와 WAS(Tomcat) 완전 이해 + 서블릿 프로젝트 시작하기
아파치와 톰켓의 헷갈리지 않도록 완벽 정리하였고, 서블릿 프로젝트 실습을 진행한 것을 정리하였습니다.
Aug 01, 2025
![[스프링부트 #0] 웹 서버(Apache)와 WAS(Tomcat) 완전 이해 + 서블릿 프로젝트 시작하기](https://image.inblog.dev?url=https%3A%2F%2Finblog.ai%2Fapi%2Fog-custom%3Ftitle%3D%255B%25EC%258A%25A4%25ED%2594%2584%25EB%25A7%2581%25EB%25B6%2580%25ED%258A%25B8%2B%25230%255D%2B%25EC%259B%25B9%2B%25EC%2584%259C%25EB%25B2%2584%2528Apache%2529%25EC%2599%2580%2BWAS%2528Tomcat%2529%2B%25EC%2599%2584%25EC%25A0%2584%2B%25EC%259D%25B4%25ED%2595%25B4%2B%252B%2B%25EC%2584%259C%25EB%25B8%2594%25EB%25A6%25BF%2B%25ED%2594%2584%25EB%25A1%259C%25EC%25A0%259D%25ED%258A%25B8%2B%25EC%258B%259C%25EC%259E%2591%25ED%2595%2598%25EA%25B8%25B0%26tag%3DTemplate%2B1%26description%3D%26template%3D3%26backgroundImage%3Dhttps%253A%252F%252Fsource.inblog.dev%252Fog_image%252Fdefault.png%26bgStartColor%3D%252323ec86%26bgEndColor%3D%252323ec86%26textColor%3D%2523000000%26tagColor%3D%2523000000%26descriptionColor%3D%2523000000%26logoUrl%3D%26blogTitle%3DGyeongwon%2527s%2Bblog&w=2048&q=75)
1. 프로젝트 만들기 (톰켓 설치 전.후)
톰켓 설치 전 후 프로젝트 만드는 과정은 사진을 참고한다.



2. 웹 서버 vs WAS 개념 정리
웹 서버 (Apache)
: 특정 폴더에 있는 정적 파일(.html, .css, .js 등)을 HTTP로 외부에 공유하는 서버
WAS (Tomcat)
:
.jsp
, Servlet(.java)
등 동적 자바 코드 실행 결과를 응답해주는 애플리케이션 서버브라우저
: 웹 서버 또는 WAS로부터 응답받은 HTML, CSS, JS 등의 문서를 해석하여 화면에 출력하는 프로그램
3. 파일 처리 흐름
파일 확장자 | 누가 처리? | 설명 |
.html , .css , .js , .jpg , .png | Apache (웹서버) | 요청된 파일을 그대로 전달 |
.jsp , Servlet(.java → .class) | Tomcat (WAS) | 자바 코드 실행 → 결과 HTML로 변환 → 브라우저 전달 |
.java 파일은 브라우저나 서버가 직접 해석하지 않음.jsp
는 브라우저가 해석하지 못하지만, 서버가 HTML로 변환해서 전달함
4. 웹 서버와 내 폴더 연결
- 웹 서버의 역할:
내 컴퓨터의 특정 폴더(예:
/webapps/ROOT
)에 있는 파일들을 외부에서 접근 가능하게 공유- 공유되는 파일 조건:
브라우저가 해석 가능한 파일들 (
.html
, .css
, .js
, .png
, ...)5. 요청 방식의 차이
요청 형식 | 동작 방식 | 처리 주체 |
localhost:8080 | 포트번호만 입력 → index.html , welcome.jsp 등 기본 페이지 탐색 | Apache or Tomcat |
localhost:8080/good/a.txt | 정확한 경로 요청 → 정적 파일 그대로 전달 | Apache |
localhost:8080/user | 식별자 요청 → 동적 매핑 주소 처리 (Servlet, JSP) | Tomcat |
6. Servlet, Tomcat, Apache..
개념 | 설명 |
Servlet | 자바로 작성된 서버 측 요청 처리기. 클라이언트 요청 → 자바 로직 처리 → HTML 생성하여 응답 |
Tomcat | 자바 코드 실행을 담당하는 WAS. JSP와 Servlet을 실행 |
Apache | 정적 파일을 외부에 공유하는 전통적인 웹 서버 |
[ Apache ] [ Tomcat ]
↓ ↓
정적 파일 → 자바 실행(JSP/Servlet)
↓ ↓
브라우저에 HTML 전달
Share article