ローカル展開
外部の可視サーバー開発サーバー上のFlaskアプリケーションには、開発環境がセットアップされているコンピューターでのみアクセスできます。これは、ユーザーがデバッグモードのコンピューターで任意のコードを実行できるため、デフォルトの動作です。
デバッグが無効になっている場合、ホスト名を「0.0.0.0」に設定することで、ローカルコンピューター上の開発サーバーをネットワーク上のユーザーが利用できるようにすることができます。
1 |
app.run(host = ’0.0.0.0’) |
したがって、オペレーティングシステムはすべてのネットワークIPをリッスンします。
開発環境から成熟した実稼働環境に切り替えるには、アプリケーションを実際のWebサーバーにデプロイする必要があります。
Flaskアプリをデプロイする
フラスコの展開
Flaskアプリをデプロイするには、次を使用できます PythonAnywhere。
これにより、アプリがオンラインになり、誰でもアクセスできるようになります。 彼らはあなたのためにサーバーを維持しているので、あなたはそうする必要はありません。 その上、それは 小さなアプリは無料。
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 |
<VirtualHost *> |
Hope this helps!
Source link