웹 서버는 HTTP 프로토콜을 기반으로 하여 클라이언트의 요청을 받아서 정적인 컨텐츠(HTML, CSS, 이미지 등)를 제공하는 역할을 합니다.
WAS 서버는 웹 애플리케이션 서버라고도 하며, 웹 서버와 DBMS 사이에서 동작하는 미들웨어로서, 동적인 컨텐츠(ASP, PHP, JSP 등)를 처리하고 응답하는 역할을 합니다. 즉, 웹 서버는 정적인 페이지만 보여주고, WAS 서버는 사용자의 요청에 따라 실시간으로 데이터를 생성하거나 변경하여 보여줍니다.
웹 서버와 WAS 서버는 각각 다른 기능을 수행하지만, 현대의 웹 환경에서는 두 가지 기능을 모두 갖춘 통합형 서버가 많이 사용됩니다. 예를 들어 아파치 톰캣은 웹 서버와 WAS의 기능을 모두 가진 대표적인 소프트웨어입니다. 이렇게 통합형 서버를 사용하면 성능과 보안 면에서 장점이 있습니다.
정적인 컨텐츠를 제공하는 방식은 웹 서버가 클라이언트의 요청을 받으면 이미 만들어진 HTML, CSS, 이미지 등의 파일을 그대로 전송하는 것입니다1. 동적인 컨텐츠를 제공하는 방식은 WAS 서버가 클라이언트의 요청을 받으면 DBMS와 연동하여 사용자별 정보를 생성하거나 변경하고, ASP, PHP, JSP 등의 스크립트를 실행하여 결과물을 HTML 형태로 변환하여 전송하는 것입니다.
예를 들어 쿠팡 사이트에서 상단의 카테고리 바와 각종 배너들은 모든 사용자들에게 동일하게 보여주는 정적 컨텐츠이고2, 로그인 이후 우측 상단의 마이쿠팡, 장바구니를 클릭하면 사용자들마다 다른 정보를 받는 것이 동적 컨텐츠입니다.