Moral Hazard!!

ドラマーが音楽やホームページやガラクタを作るよ。

Microsoft AzureにWindows2008を入れてWordPressが動作する環境を構築する その1

No Comment wordpress,,

WordPressでサーバがWindows2008 RC2 SP1指定という案件があったので、折角なのでWindowsのクラウドサービスAzureを使って仮想テスト環境を構築。
非常に手間だったのでメモを残す。
※不具合・ご指摘大歓迎です。

で、結論から言うと、

・Windows環境でWordpressを動かすのはやめておいたほうがいい…
・Azure扱いやすい、UIが分かりやすい、けどとにかく高い

です。
特にhtaccessで簡単に設定できてたリダイレクト・Basic認証などがweb.configで書かないといけないところ、キャッシュ系プラグインがほぼ対応していない事、権限周りの煩わしさ、日本語URLのバグなどで泣きそうになる。

Azureのアカウントを作る。

クレジットカードがあれば20,000円分無料で1か月試用が可能なので、早速申し込む。

Azureダッシュボード。
綺麗で見やすく、カスタマイズしやすい。

Virtual Machineの作成

メニューのVirtual Machinesを選択し、「Virtual Machineの作成」をクリック。
お勧めに出る「Windows Server → Windows2008 R2 SP1」を選択。

「デプロイモデルの選択」はそのまま「作成」を押す。

基本設定を適当に埋め、仮想マシンのサイズ選択。

最初からお勧め環境が出てくるが、「すべてを表示」を選択すると月額57万円のサーバとか出てきて笑う。
もちろん価格は変動するが、僕が見た時点で一番安い環境が1vCPU,1GBメモリ,SSD2GB,iops800で1,500円。
※IOPS = (I/O per Second)。ディスクが1秒当たりに処理できるI/Oアクセスの数
※データディスク = 接続可能なデータディスクの最大数

まぁ試用なのでお勧めから適当なものを選択。
次のオプション機能の設定も触らずOKを押す。
検証が終了したらそのまま「作成」。デプロイにしばらく時間がかかる。

デプロイ終了後、デスクトップから仮想環境にアクセスできる。
「接続」を押してWindowsサーバへリモートアクセス。

資格情報には基本設定で入力したユーザー名とパスワードを入力。

Windowsにアクセス出来た。

IISのインストール

Microsoft Internet Information Services(WEBサーバ)をインストールする。

Startボタン右側のServer Managerを起動し、Rolesを右クリックして「Add Roles」を選択。
IISにチェックを入れてNext。

Select Role ServicesもそのままNext。

インストール完了後、IIS Managerに「Default Web Site」が作られている。

Default Web Siteを右クリック→Exploreでルートフォルダの位置(C:\inetpub\wwwroot)がわかる。

※ファイルの拡張子表示はエクスプローラーでaltキーでメニュー表示→Tools → Folder Options→ Viewタブの
「Hide extentions for known filetypes」のチェックを外す。
※右側Actionの「Browse *:80(http)」をクリックで、ローカルからブラウザ確認が可能。

Azure Network Security Groupでポートを開放

もちろんこのままではリモートからサイトが見れない、FTP接続もできないので、Webサーバの80番ポートと21番FTPのポートを開放。

AzureポータルからリソースのNetwork Security Group(盾のアイコン、名前は入力したID-nsg)をクリックし、ネットワークセキリュティグループを表示、「受信セキリュティ規則」に

ソース : IP Address
発信元IPアドレス範囲 : 自分のIP/32
発信元ポート範囲 : 任意。(webサーバは80,FTPは21。テスト環境なので今回は全ポート*を入力。)

を追加することで、自分だけがアクセス可能。
優先度、名前などは適宜変更。

設定が完了すると、リモートのブラウザから

初期ページが表示される。

静的IPの割り当て

Azureのリソースを停止したときにIPが変わってしまうのを防ぐため、IPを静的に変更する。
「パブリックIPアドレス→構成」
を選択し、「割り当て」を動的→静的に変更。

タイムゾーンの変更

タスクバー右側の時間を右クリック→Change date and time settingsをクリック。
Change time zone → (UTC+9:00) Osaka,Sapporo,Tokyoを選択。

FTPサーバのインストール、設定

・Web Manager(IIS)を右クリック「Add Role Services」でFTPをインストール。
・Defalut Web Siteの「FTP Authentication」で「Basic Authentication」を「Enable」に設定。
・Defalut Web SiteのFTP SSL Settingsで「SSL Policy」を「Allow SSL connections」に設定。
(※SSLを使用しない設定だと、デフォルトのファイアーウォールがブロックする仕様、との事)
・FTPソフトではActive接続を選択。

Windows Firewallの設定

AzureのNSGを使用するので、今回は特に設定しない。

HTMLの表示

Default Web Siteのルート(C:\inetpub\wwwroot)に適当にメモ帳でindex.htmlを作成&UTF8で保存すると、ブラウザで

表示される。

その2へ。