Python 3 – Flaskアプリのデプロイ-Pythonチュートリアル

ローカル展開

外部の可視サーバー開発サーバー上のFlaskアプリケーションには、開発環境がセットアップされているコンピューターでのみアクセスできます。これは、ユーザーがデバッグモードのコンピューターで任意のコードを実行できるため、デフォルトの動作です。

デバッグが無効になっている場合、ホスト名を「0.0.0.0」に設定することで、ローカルコンピューター上の開発サーバーをネットワーク上のユーザーが利用できるようにすることができます。

1
app.run(host = ’0.0.0.0’)

したがって、オペレーティングシステムはすべてのネットワークIPをリッスンします。

開発環境から成熟した実稼働環境に切り替えるには、アプリケーションを実際のWebサーバーにデプロイする必要があります。

Flaskアプリをデプロイする

フラスコの展開

Flaskアプリをデプロイするには、次を使用できます PythonAnywhere

これにより、アプリがオンラインになり、誰でもアクセスできるようになります。 彼らはあなたのためにサーバーを維持しているので、あなたはそうする必要はありません。 その上、それは 小さなアプリは無料

Pythonフラスコアプリを起動します

Flaskアプリをapacheにデプロイする

独自のサーバーを実行することを主張する場合(すべてのメンテナンス負担を伴う)、Apacheを使用して実行できます。 しかし、寿命は短く、使いやすいです PythonAnywhere

PyPiから直接公式リリースをインストールするには、次のコマンドを実行できます。

mod_wsgi は、ApacheサーバーでPythonベースのWebアプリケーションをホストするためのWSGI準拠のインターフェイスを提供するApacheモジュールです。

インストールが成功したことを確認するには、start-serverコマンドを使用してmod_wsgi-expressスクリプトを実行します。

1
mod_wsgi-express start-server

これにより、ポート8000​​でApache / mod_wsgiが起動します。次に、ブラウザで次のコマンドを指定することにより、インストールが有効であることを確認できます。 localhost:8000 /

create .wsgiファイルにはyourapplication.wsgiファイルが含まれている必要があります。このファイルには、起動時にアプリケーションオブジェクトを取得するために実行されるコードmod_wsgiが含まれています。ほとんどのアプリケーションでは、次のファイルで十分です。

1
from yourapplication import app as application

アプリケーションと使用中のすべてのライブラリがPythonロードパス上にあることを確認してください。

アプリケーションが配置されている場所をmod_wsgiに通知する必要があるApacheを構成します。

1
2
3
4
5
6
7
8
9
10
<VirtualHost *>
ServerName example.com
WSGIScriptAlias / C:yourdiryourapp.wsgi

<Directory C:yourdir>
Order deny,allow
Allow from all
</Directory>

</VirtualHost>

Hope this helps!

Source link