django를 apache에 구동하기

아파치 사이트에 접속한다.
http://httpd.apache.org/

아파치는 2.2 버전대를 다운로드 하였다.
아래 링크로 접속하면 바로 windows 용을 다운로드 하는 페이지로 이동한다.
http://mirror.apache-kr.org//httpd/binaries/win32/

SSL은 필요 없어 기본으로 아래의 파일을 다운로드 받았다.
httpd-2.2.25-win32-x86-no_ssl.msi

설치는 간단하여 생략. exe 파일을 실행하고 다음버튼만 누르면 기본 셋팅된다.

장고를 구동하기 위해서는 mod_wsgi를 다운받아야한다.
mod_wsgi-win32-ap22py27-3.3 로 검색을 하거나 아래 링크에서 다운을 받는다.
https://code.google.com/p/modwsgi/downloads/detail?name=mod_wsgi-win32-ap22py27-3.3.so

mod_wsgi-win32-ap22py27-3.3.so 파일이 생성되는데
파일의 이름을 mod_wsgi.so로 수정한다.

아파치가 설치되어있는 기본폴더에 modules에 mod_wsgi.so 파일을 복사한다.
C:\Program Files\Apache Software Foundation\Apache2.2\modules

C:\Program Files\Apache Software Foundation\Apache2.2\conf 폴더에 있는
httpd.conf 파일을 열어 마지막에 아래와 같이 추가한다.

아래와 같이 모듈을 로드하면 장고를 실행해준다.

## 장고 추가 설치 경로
#WSGI Setting for Django
LoadModule wsgi_module modules/mod_wsgi.so

WSGIScriptAlias / d:/django_blog/apache/django.wsgi

<Directory "d:/django_blog/apache">
Order deny,allow
Allow from all
</Directory>

위 스크립트에 보면 WSGIScriptAlias 가 있는데
/ (슬래쉬) 절대경로를 d:/django_blog/apache/django.wsgi 파일로 인식하라는 명령이다.
django_blog는 장고프로젝트 루트 디렉토리이고 apache 를 구동하기 위해
별도의 폴더를 만들고 django.wsgi라는 파일을 만들었다.


django.wsgi 파일의 내용은 아래와 같다.

import os
import sys
sys.path.append('d:/django_blog')
os.environ['DJANGO_SETTINGS_MODULE']='mysite.settings'

import django.core.handlers.wsgi
application=django.core.handlers.wsgi.WSGIHandler()

아파치를 시작하고 localhost를 호출하면 서비스가 시작된다.
장고에서 runserver와 동일하게 나오면 완성....

참고로 static파일을 제대로 인식못해 헤맸는데 앞의 글 참고하세요...



댓글

이 블로그의 인기 게시물

dtsrun 실행하기

[MS SQL] SP수행 시간 및 작업빈도 확인

Slug가 뭘까?