目的は、PythonでWebサイトを簡単に構築・運営できるための手法を紹介することです。Pycharm Professionl版やWindows Serverを使うのは、LinuxサーバーやVisual Studioといった組み合わせに比べて、面倒な手順をすっ飛ばせるので、時間をかけたくない人、とりあえず簡単に動的サイトを作りたい人にはおすすめです。
AWSの環境周りの設定(初期準備)
本記事では、AWSを使ってWebサイトを作るための手順を紹介していきたいと思います。今回作るAWSの構成は下の図となります。
それでは早速始めていきます。まずはTokyo Regionの中に、VPC(Virtual Private Cloud)、インターネットからアクセスできるようにPublic Subnetを作成していきます
*https://aws.amazon.com/jp/console/ からAWSにアクセスできる前提となりますのでアカウントを作成していない方はアカウントを作成ください。
マネージドコンソールへアクセスし、検索バーに「VPC」と入力、検索結果からVPCをクリックしてください。
メニュー右上の「東京」を選択後、VPCウィザードを起動を選択してください。
作成するリソースで、VPC,サブネットなどにチェックしてください。CIDRブロックはデフォルト10.0.0.0/16ですが、IPアドレスが多すぎるので、今回は32IPの10.0.0.0/27でVPCを作成していきたいと思います。これはVPCの中にIPアドレスをいくつ確保できるかの定義を行っていて、本来はシステムで使うIP数をもとに試算し適切な数を設定すべきものです。今回はテストサイトのためIPは少数確保で問題ないと考えました。
続いて、アベイラビリティーゾーンとパブリックサブネットですが、httpsでのアクセスとドメイン(***.com)でアクセスできるようにしたいので、2を選択してください。プライベートサブネットは今回不要となりますので0を設定してもらって構いません。(Windows ServerやDBをよりセキュアにしたいという方はプライベートサブネット内へ配置ください)すべて選択できましたらVPCを作成をクリック
Windows Serverの構築
VPCとサブネットができましたら早速、WebサイトをデプロイするサーバーとなるWindows Serverを作っていきましょう。検索バーにEC2と入力し、検索結果からEC2を選択してください。
画面が開きましたら、次にインスタンスを起動をクリック
名前欄にサーバーの名前を記入してください
クイックスタートで、Windowsを選択します
インスタンスタイプはデフォルト(t2.micro)を選択しました。お金に余裕があればで構いませんが、もう少し良いインスタンスを選択すると使いやすさがUPします。テスト目的であればそのままで大丈夫です。
キーペアはWindows Serverへログインするために必要なPWを生成するために必要なものです、新しいキーペアの作成をクリックしてください。
キーペア作成画面が開きますので、キーペア名 にtestと入力し、キーペア作成をクリック
ネットワーク設定では、編集をクリックしてください。
編集をクリックすると、VPCとサブネットを選択できますので、先ほど作成した 10.0.0.0/27のVPCを選択してください。サブネットはPublicサブネットを選択してください。(本サイトの手順通りの場合Publicサブネットのみなので迷うことはないです)次にパブリックIPの自動割あては、有効化を選択ください。IPアドレスを使ってサイトへのアクセスがインターネット経由で可能となります。最後に、インスタンスを起動をクリック
EC2 ダッシュボードを表示し、検索バーに test-serverと入力すると、作成したサーバーが表示されます。
test-serverの横の、チェックボックスをCKし、接続ボタンをクリックしてください。以下の画面が表示されますので、RDPクライアントタブを選択し、「リモートデスクトップファイルのダウンロード」をクリック、ユーザ名を控えたらば、「パスワードを取得」をクリックしてください。
Browseから、上で作成した、test.pemを選択(ダウンロードフォルダにダウンロードされていると思います)し、「パスワードを復号化」をクリックしてください。
パスワードが生成されるので、手元に控えてください。
ここまでできたらば、ダウンロードフォルダに入っている、test-server.rdpをクリックしてリモートデスクトップを起動してください。
パスワード欄に、先ほど控えたPWを入力して、OKをクリック
Windows ServerのTOP画面が表示されれば成功です。
つぎはWindows Serverの設定(公開)をしていきます
おまけ セキュリティーグループの設定
今回の設定ですと、インターネットから誰でも入って来れるため、パスワードが流出してしまうとハッキングされてしまうリスクがあります。そこで、セキュリティーグループを使って最低限の防御として、アクセス先を制限しておきます。
EC2ダッシュボードからtest-serverを選択します
セキュリティーから、セキュリティーグループのリンクをクリック
「インバウンドロールを編集」をクリックし、ソースのドロップダウンリストから「マイIP」を選択すると、自分のPCからのみのアクセスを許可することができます。タイプがRDPとなっていますが、これはRemoteDesktopProtocolの略で、リモートデスクトップからのアクセス通信では、自分のPCからのアクセスを許可するという意味になります。
おまけ Windows Serverの日本語化
まずはじめにWindow Serverの日本語化をしておくと便利です。デスクトップ左下の検索アイコンから、[lang]と入力して, language setting を開きます。
次に表示された画面でAdd a language をクリックし、検索バーに[japa]と入力、日本語を選択します。あとはインストールするとWindows Serverの表記が日本語になります。このインストール5分以上かかりますので気長にまっていてください。インストール終了したら再起動で日本語になっていることを確認ください(おしまい)
おまけ Webブラウザの設定
インターネットエクスプローラを開くとこんなメッセージがいちいちで鬱陶しいので、権限を変更します
サーバーマネージャを開き、ローカルサーバー、IEセキュリティ強化の構成をクリックし、無効にしてください