English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Flask 배포

개발 서버의 Flask 애플리케이션은 개발 환경이 설정된 컴퓨터에서만 접근할 수 있습니다. 이는 디버깅 모드에서 사용자가 컴퓨터에서 어떤 코드든 실행할 수 있는 기본 행동입니다.

디버깅이 비활성화되어 있으면, 호스트 이름을 ':0.0.0.0'로 설정하여 네트워크의 사용자가 로컬 컴퓨터의 개발 서버를 사용할 수 있게 합니다.

# Filename : example.py
# Copyright : 2020 By w3codebox
# Author by : ko.oldtoolbag.com
# Date : 2020-08-08
app.run(host = '0.0.0.0')

이렇게 하면, 귀하의 운영 체제는 모든 공공 IP를 감지하게 되며, 즉 모든 요청이 처리됩니다.

배포

개발 환경에서 완전한 프로덕션 환경으로 전환하려면, 애플리케이션이 실제 웹 서버에 배포되어야 합니다. 귀하의 상황에 따라 Flask 웹 애플리케이션을 배포할 수 있는 다양한 옵션을 사용할 수 있습니다.

소형 애플리케이션의 경우, 다음 중 어느 하나의 퍼블리싱 플랫폼에 배포할 수 있습니다. 모든 이 플랫폼은 소형 애플리케이션을 위한 무료 계획을 제공합니다.

Heroku dotcloud webfaction

Flask 애플리케이션은 이러한 클라우드 플랫폼에 배포될 수 있습니다. 또한 Google 클라우드 플랫폼에서 Flask 애플리케이션을 배포할 수 있습니다. Localtunnel 서비스는 DNS와 방화벽 설정을 혼란스럽지 않게 로컬 호스트에서 애플리케이션을 공유할 수 있도록 합니다.

위의 공유 플랫폼 대신 전용 웹 서버를 사용하려는 경우 다음 옵션을 사용할 수 있습니다.

mod_wsgi

mod_wsgi는 Apache 모듈로, Apache 서버에서 Python 기반 웹 애플리케이션을 토스턴(WSGI) 호환 인터페이스로 제공합니다.

mod_wsgi 설치

PyPi에서 직접 공식 버전을 설치하려면 실행할 수 있습니다 -

# Filename : example.py
# Copyright : 2020 By w3codebox
# Author by : ko.oldtoolbag.com
# Date : 2020-08-08
pip install mod_wsgi

인스톨이 성공적으로 완료되었는지 확인하려면 start를 사용하세요-서버 명령어로 mod_wsgi 실행-express 스크립트 -

# Filename : example.py
# Copyright : 2020 By w3codebox
# Author by : ko.oldtoolbag.com
# Date : 2020-08-08
mod_wsgi-express 시작-서버

그것은 포트에서 시작됩니다:8000 시작 Apache/mod_wsgi로 이동하여 -

# Filename : example.py
# Copyright : 2020 By w3codebox
# Author by : ko.oldtoolbag.com
# Date : 2020-08-08
http://localhost:8000/

wsgi 파일을 생성하세요

여기서 yourapplication.wsgi 파일. 이 파일은 시작 시 애플리케이션 객체를 얻기 위해 실행되는 mod_wsgi 코드를 포함합니다. 대부분의 애플리케이션에서 다음 파일이 충분합니다 -

# Filename : example.py
# Copyright : 2020 By w3codebox
# Author by : ko.oldtoolbag.com
# Date : 2020-08-08
from yourapplication import app as application

yourapplication과 사용 중인 모든 라이브러리가 python 로드 경로에 위치해야 합니다.

Apache 설정

mod_wsgi에 애플리케이션 위치를 알려야 합니다. 다음 설정을 참조하세요 -

# Filename : example.py
# Copyright : 2020 By w3codebox
# Author by : ko.oldtoolbag.com
# Date : 2020-08-08
<VirtualHost *>
    ServerName example.com
    WSGIScriptAlias / C:\yourdir\yourapp.wsgi
    <Directory C:\yourdir>
       Order deny,allow
       Allow from all
    </Directory>
 </VirtualHost>

독립적인 WSGI 컨테이너

Python으로编写的 많은 인기 서버가 있으며, WSGI 애플리케이션을 포함하고 HTTP 서비스를 제공합니다.

Gunicorn Tornado Gevent Twisted Web