인터넷에 떠돌아다니는 문서로 삽질삽질을 하다 결국 성공을 해서 과정을 정리함
환경은
IIS7
python3.4 32bit
django1.7
django 1.7을 사용 한 이유는
django-mssql 1.7 부터는 mssql 2008 r2 지원을 하지 않아
(https://django-mssql.readthedocs.io/en/latest/changelog.html#v1-7)
1.6을 써야 하는데
이걸 쓰려면 django 1.7을 사용해야 함
1. 제어판 - 프로그램 - 프로그램 및 기능 - Windows 기능 사용/사용안함 메뉴를 통해 IIS(인터넷 정보서비스) 와 CGI 를 설치해준다
2. 마이크로 소프트에서 제공하는 Microsoft Web Platform Installer 를 실행하여
python 키워드로 검색,
python(3.4 32bit), wfastcgi for python 3.4 설치
WPI : https://www.microsoft.com/web/downloads/platform.aspx
3. 환경변수에 python 설치된 디렉토리 등록
내컴퓨터 - 속성 - 고급 시스템 설정 - 환경변수 - 시스템 변수 or 사용자 변수 Path 에 C:\Python34_x86;C:\Python34_x86\Scripts 추가. 기본값으로 왼쪽같은 디렉토리에 설치됨
4. python 설치와 path 가 제대로 등록되었는지 확인.
시작메뉴 - 실행 - cmd
python --version
5. django 설치
pip install django==1.7
6. django-mssql 설치
pip install django-mssql==1.6.1
7. 설치확인
pip list
명령으로 설치된 항목들 확인
8. django 시험 프로젝트 생성
편의상 c:\ 루트에 demo 라는 이름의 프로젝트 생성을 가정
django-admin startproject demo
cd demo
mkdir media
mkdir static
mklink demoPython.exe C:\Python34_x86\python.exe // symlink(바로가기)를 만듦
결과
9. c:\demo\demo\settings.py code 변경
STATIC_URL = '/static/' 라고만 설정되어 있는데
아래 문구로 변경
MEDIA_ROOT = os.path.join(BASE_DIR, 'media')
STATIC_ROOT = os.path.join(BASE_DIR, 'static')
MEDIA_URL = '/media/'
STATIC_URL = '/static/'
위 코드 적용
10. IIS 설정
10.1 시작 - 실행 - inetmgr
10.2 사이트 -> 우클릭 -> 웹사이트 추가
A. 실제 경로 : c:\demo\demo
B. 포트설정 : 8003 (원하는 포트로 설정)
C. 확인
10.3 만들어진 demo 사이트 클릭 -> 처리기 매핑 더블클릭 -> 우측의 모듈매핑 추가
A. 요청경로 : *
B. 모듈 : FastCgiModule
- 여기서 FactCgiModule 이 없으면 FastCgi 설치 후 진행 해야함 Windows 기능 설치 - CGI 추가
C. 실행파일(옵션): c:\demo\demoPython.exe|C:\Python34_x86\Scripts\wfastcgi.py
- sym 링크로 생성한 demoPython.exe 와 Web Platform Installer 로 설치한 wfastcgi.py 설정
D. 이름:demoPython
- 이름은 원하시는대로
10.4 확인후 응용프로그램 만드시겠습니까 하는 물음에 '예' 로 선택함
10.5 왼쪽 트리메뉴에서 사이트 상위에 있는 IIS 홈으로 돌아가 FastCGI 설정 더블클릭
10.6 demoPhython 더블클릭 -> 환경변수 -> 컬렉션 수정 -> 추가
Name :WSGI_HANDLER
Value : demo.wsgi.application
위에서 demo 부분은
django-admin startproject demo
할때 Project name 인 demo 와 매칭되므로 바꿀 수 있음
10.7 가상디렉토리 추가
A. 사이트 -> demo -> 우클릭 -> 가상디렉토리 추가
B. 별칭:static, 실제경로:C:\demo\static
C. A 반복후 별칭: media, 실제경로 c:\demo\media
11. 사이트 접속 테스트
http://localhost:8003
ㅠㅜ 눈물난다
참조:
http://kiahosseini.github.io/server/2016/01/05/running-multiple-django-python-3-projects-in-windows-server-2012-on-iis.html