거북이의 IT 공부

[Django] Django는 웹서버인가? 본문

Web/Django

[Django] Django는 웹서버인가?

버니빈 2020. 8. 14. 01:41

미리 답을 말하면 장고 자체는 웹서버가 아니다.

 

장고는 장고만의 웹서버를 사용한다.

개발 목적으로 python으로 짜여진 가벼운 WSGI(web server gateway interface)를 사용한다.

장고 프로젝트 만들 때 wsgi.py가 자동으로 생성된다. (WSGI = 장고의 내장 WAS = 장고만의 웹서버)

이러한 Python WAS인 WAGI 덕분에 runserver를 하면 장고에서 GET, POST 요청 등 Client가 웹서버에 보내는 요청(request)를 확인할 수 있다 - 이는 결국 우리 컴퓨터 자체가 하나의 서버로 동작하게 된 것이다.

 

그래서 장고로 작은 프로젝트 만들 때 장고(정확히 말하면 WSGI)를 웹서버로 생각해도 무방하다. (아파치같은 웹서버를 따로 파지 않는 이상말이다!)

만약 아파치 같은 웹서버를 따로 두면 장고는 동적인 파일을 처리하는 외부 프로그램(웹 애플리케이션)이다.

이 웹서버와 웹 애플리케이션을 연결하는 연결체가 WSGI(python WAS - Django에는 내장되어 있음)가 되는 것이다.

 

 

 

 

참고 - https://itmining.tistory.com/m/135

Comments