※2016/12/20 追記
この記事で書いているのは、kuduからStrawberry PerlをインストールしてPerl を利用する方法ですが、今は、Web.config を設定するだけでPerlを利用できるようです。
詳しくは、工藤さんのブログをご確認ください。
以下、オリジナルの記事です
Microsoft Azure の Web App で Perl が動くことって意外に知られてないのかもって思いまして、ちょっとやってみようと思います。
ついでに、FTP するのがなんとなくめんどくさかったので、DropBox で CGI をデプロイして、Web.config は、Visual Studio Monaco を使った手順です。
また、動かしたアプリは、KENT WEB で配布されてます、YY BOARD にしました。
YY BORD は、下記の URL よりダウンロードできます。
おおまかな手順
おおまかな手順は以下の通りです。
- YY BORD をダウンロードして、DropBox の中につっこむ
- Web App を作成する
- 管理ポータルより、DropBox からデプロイする
- Kudu より、Perl をインストールする
- Visual Studio Monaco で、Web.config を作成する
- Web App を再起動する
- 完成
手順の詳細
1.YY BORD をダウンロードして、DropBox の中につっこむ
ダウンロードした yybbs.zip を解凍して、DropBox に突っ込みます。
※ 余計なものが見えてる気もしますが、気にしちゃいけません。
2.Web App を作成する
空の Web App を作りましょう~
3.管理ポータルより、DropBox からデプロイする
「ダッシュボード」タブより、「ソース管理からのデプロイ設定」で、DropBoxからデプロイを行う設定をします。
これでデプロイまでできました。FTP などでアップロードしてしまえば、これまでの手順はやらなくてもOKです。
途中で、Windows Azure って出ていたような気もしますが、そういうことは気にしちゃいけません。
ちなみに、ここでWeb App にアクセスすると、こんな感じです。
4.Kudu より、Perl をインストールする
kudu へのアクセス方法は、「http://<Web App 名>.scm.azurewebsites.net/」です。
この kudu を使って、Web App に対して、Perl をインストールします。
インストールする Perl は、「Strawberry Perl」
■Strawberry Perl Releases
http://strawberryperl.com/releases.html
また、インストールの手順は、しばやんさんが Perl , Ruby , Go を Web App にインストールするスクリプトをGitHubで公開しているので、それをそのままパクらせて参考にさせて頂きました。
https://github.com/shibayan/AzureWebSitesSetupScripts
コマンドを実行するために、「Debug console」→「CMD」を選びます。
表示された、コマンドプロンプトより、下記を実行しました。
set PATH=%PATH%;D:7zip cd /d D:homesitewwwroot mkdir bin & cd bin curl -L -O http://strawberryperl.com/download/5.20.3.1/strawberry-perl-5.20.3.1-32bit-portable.zip 7za x strawberry-perl-5.20.3.1-32bit-portable.zip > nul rm -f strawberry-perl-5.20.3.1-32bit-portable.zip
実行後、perl -v でバージョンの確認
5.Visual Studio Monaco で、Web.config を作成する
インストールしたPerlに対してPathを通すために、Web.config の設定を行います。
ローカルで作成した Web.config をアップロードしてもいいのですが、今回は、Visual Studio Monaco を使いました。
Visual Studio Monaco を起動するための設定をします。
Visual Studio Monaco を起動したら、Web.config を作成します。
6.Web App を再起動する
Web.config の設定の繁栄のために、Web App を再起動します。
7.完成
YY Board が動きました。
コメント
[…] 下記ではStrawberry Perlを使っています。これでも動きます。 Microsoft Azure Web App で Perl の CGI を動かす https://memobog.azurewebsites.net/2015/09/25/microsoft-azure-web-app-%E3%81%A7-perl-%E3%81%AE-cgi-%E… […]