はじめに
前回、前々回と、2回にわたって、ローカルで仮想環境を構築して、WEBアプリを作成し、試してみました。(→参照)
しかし、実際にWebサイトを立ち上げて、このアプリを公開したら、本当に動くのでしょうか?
このような疑問が湧き上がってきましたので、Webサイトを立ち上げて、テスト的に試してみることにしました。
今回実施したこと
レンタルサーバー探し
まずは、Webサイトを公開するレンタルサーバー(ホスティングサービス)を探さないといけません。
ホスティングサービスの中にはPython プログラムを実行できる環境が無いところもあるようですので、Python プログラムを実行できる環境があるところから、選ぶことになります。
とは言っても、たくさんあるようなので、その中からいくつか検討した結果、今回は「Pythonanywhere」 に申し込むことにしました。
常時接続、広告無し、でサーバーを無料利用できて、フレームワークも Django、 Flask、 がしっかり使えるようですし、データベースに MySQL も利用可能。
サーバー上のファイル操作も分かりやすい、というふうに紹介されていましたので、ここに決めました。
ディスク容量が512MBで、少し心許ないですが、有料契約に切り替えれば解消するようです。
少し使ってみて、運用がうまくいきそうなら、検討しようと思います。
それでは、具体的に申し込みから公開までを紹介します。
申し込みから公開
公式サイトにアクセス
まずは、公式サイトにアクセスします。
↓こちらからです。
アカウントを作成
公式サイトにアクセスしたら、次は画面上からアカウントの作成に移ります。
画面中央に緑地に白文字で「Start running Python online ~」と記載されているところがありますので、ここをクリックします。
次のページに移ると、契約の種類がいくつか表示されます。
今回は、画面上部のBeginnerプランの、「Create a Beginner account 」をクリック。
すると、名前、メールアドレス、パスワードを入力する画面に移ります。これらを入力して送信すれば、アカウントの作成が完了です。
ファイルをアップロード
アカウントが作成できたら、「DASHBOARD」という表題の画面が開きます。
いわゆるトップの画面ですね。
次は、WEBサイトに公開するコンテンツをサーバーにアップロードします。
「DASHBOARD」画面の下のほうにいくつかのメニュー表示があるので「Files」メニューから、アップロードします。
このとき、いくつかのファイルとフォルダをまとめてアップロードしますので、コンテンツをZIPファイルにしておきます。
今回は、前回までに作成したものを、アップロードします。下図のようなフォルダ構成のZIPファイルを作成して、アップロードしました。
\UPLOAD\
|--templates\
| |--index.html
|--static\
| |--index.css
|--main.py
コマンドを次のように打つと解凍出来ます。
仮想環境の設定
解凍が終わったら、引き続き、コンソール画面で仮想環境を設定します。
Pythonのバージョンは自分できめます
mkvirtualenv todo --python=python3.10
利用するモジュールもインポート
「DASHBOARD」の画面に戻って、メニューの一番右にある「Web apps」を選びます。
pip install Flask
今回はFLASKを選択
Pythonのバージョンを選びます。
今回は3.10を選択
ファイルへパスを通す
あとは、先ほどアップロードした、ファイルのmain.pyへパスを通します。
この画面の下のほうにVirtualenvとありますので
todoと入力してチェックをクリック
そして、同じ画面のVirtualenvの上にCodeとありますので、そこでWSGI Configuration file を選択。
この画面でpyファイルを書き換えます。
この2か所を書き換えました。下線部分が書き換えたところです。
【元】 project_home = '/home/newrongo555/mysite'
↓元の記述をこのように変更
project_home = '/home/newrongo555/UPLOAD'
【元】 from flask_app import app as application # noqa
↓元の記述をこのように変更
from main import app as application # noqa
main.pyまでのパスがわからないときは、DASHBOARDの画面に戻って、FILESのBrows filesから確認できます。
結果
こんな感じで表示されました。(原稿作成時)
おわりに
ローカルで作成したものをそのまま使用しても、問題なく表示されましたので、これから安心してローカルの仮想環境で開発を継続していけそうです。


















0 件のコメント:
コメントを投稿