상세 컨텐츠

본문 제목

윈도우 서버 IIS에 Flask 세팅하는 방법

서버

by 안녕신호 2023. 8. 1. 15:34

본문

반응형

아래 순서대로 윈도우 서버 IIS에 파이썬 웹프레임워크인 Flask를 세팅할 수 있습니다.

 

1. 파이썬 설치

 - 먼저, 파이썬 3.8.0 버전을 파이썬 공식 웹사이트(https://www.python.org/downloads)에서 다운로드 하고 설치합니다.

 - 설치 중 "Add Python 3.8 to PATH" 옵션을 선택하여 환경 변수를 설정합니다.

    * 필자는 3.9.x버전을 설치했다가 wsgi 관련 에러가 지속 발생하였음. wfastcgi이 지원하는 파이썬 버전이 있다고 하니 반드시 파이썬 버전 확인 해야함.

 

2. Flask 애플리케이션 생성

 - 원하는 디렉토리에 새 폴더를 생성하여 Flask 애플리케이션을 만듭니다.

 - 명령 프롬프트에서 해당 폴더로 이동한 뒤, 아래 명령어라 Flask를 설치합니다.

pip install flask

 - app.py와 같은 진입점 파일을 생성하고 간단한 예제 코드를 작성합니다.

from flask import Flask
app = Flask(__name__)

@app.route('/')
def hello_world():
	return "Hello, Flask on IIS!"
    
if __name__ == "__name__":
	app.run()

 

3. WSGI 서버 설치

 - 파이썬 패키지 관리자인 pip를 이용하여 wfastcgi를 설치합니다.

pip install wfastcgi

 - wfastcgi.py 파일을 애플리케이션 폴더에 복사합니다.

 

4. IIS 웹 사이트 생성

 - Windows 제어판의 '관리 도구'에서 '인터넷 정보 서비스(IIS) 관리자'를 실행합니다.

 - 좌측 탐색창에서 '사이트'를 우클릭하고 '새 사이트'를 선택합니다.

 - 사이트 이름과 실제 경로를 지정합니다.

 - 사이트 이름은 원하는 걸로 지정하시면 되고 '실제 경로'는 app.py가 존재하는 경로를 찾아서 넣어주면 됩니다.

 - 바인딩은 'http', '지정하지 않은 모든 IP'를 선택하고 포트는 flask의 기본포트인 '5000'으로 지정해줍니다.

   (매핑할 도메인이 있다면 '호스트 이름'에 넣어주시면 됩니다.)

 

5. FastCGI 설정

 - '애플리케이션 풀'을 우클릭하고 '새 애플리케이션 풀'을 선택합니다.

 - 새로운 애플리케이션 풀 이름을 설정한 뒤 .NET CLR버전을 'No Managed Code'로 설정합니다.

 - 생성한 사이트를 우클릭하고 '매핑된 핸들러'를 선택합니다.

 - '매핑 추가'를 클릭하고 '수행할 업무'를 'FastCgiModule'로 선택합니다.

 - '무인 스크립트 핸들러를 사용' 옵션을 체크하고, '요청 경로'와 '실행 파일'에는 wfastcgi.py의 경로를 입력합니다.

 

6. 환경 변수 설정

 - 생성한 사이틀르 우클릭하고 '고급 설정'을 선택합니다.

 - '환경 변수' 섹션에서 '추가'를 클릭하고 환경 변수를 설정합니다.

 - '이름'에는 'WSGI_HANDLER'를 입력하고, '값'에는 'app.app'과 같이 애플리케이션 진입점을 입력합니다.

 

7 . 웹 사이트 테스트

 - IIS에서 생성한 웹 사이트를 우클릭하고 '관리' > '사이트 운영' > '시작' 을 선택하여 웹 사이트를 실행합니다. (굳이 실행하지 않더라도 자동으로 실행이 되고 있을 겁니다. 그래도 사이트가 실행 상태인지 확인해줍니다.)

 - 웹 브라우저에서 'http://localhost:5000' 을 입력하여 Flask 애플리케이션이 동작하는지 확인해봅니다.

 

반응형

댓글 영역