Upload
microsoft-openness-japan
View
424
Download
1
Embed Size (px)
Citation preview
Windows Azure で PHP アプリを動かすための Tips を得
よう!
2011/05/28浅見 城輝
http://www.asami.asia/
Copyright 2011 Kuniteru Asami 1
浅見 城輝個人事業主 ( 2006 年 8 月に独立)http://www.asami.asia/
Windows Azure 導入支援◦ LAMP から Windows Azure への移行
データベース関連サービス◦ パフォーマンスチューニングが得意
サーバー構築 Web アプリケーション開発 インストールマニアックス 2008 ドキュメント賞 元々は UNIX/Linux+Oracle な人
実は Windows のテクノロジはあまり知らないCopyright 2011 Kuniteru Asami 2
Speaker
PHP on Azure な開発環境を作るツール Azure で便利な PHP 用 API
Agenda
Copyright 2011 Kuniteru Asami 3
Windows Azure Companion WebPi Command Line Microsoft Visual Web Developer Eclipse PDT (windowsazure4e) CSPack & CSRun Command Line Tool Windows Azure Command-line Tools for PHP
PHP on Azure な 開発・デプロイ環境を作るツール
Copyright 2011 Kuniteru Asami 4
http://archive.msdn.microsoft.com/azurecompanion
省 略さっき「できる! Windows Azure Companion 」で聞いたでしょ ?
Copyright 2011 Kuniteru Asami 5
Windows Azure Companion
と言いつつ少しだけ… ProductListXmlFeed を自前で用意することで、
他のアプリケーションもインストールすることができます。
Windows Azure Companion (2)
Copyright 2011 Kuniteru Asami 6
http://www.asami.asia/WindowsAzureCompanionFeed.xml
http://blogs.iis.net/satishl/archive/2011/01/26/webpi-command-line.aspx
Web Platform Installer のコマンドライン版です。 Startup Task で Windows Azure 上に PHP を
簡単にインストールできます。◦ 標準では細かいバージョンの選択はできません。
5.3/5.2 が選択可能です。 5.3.x/5.2.x は選択不可です。
WebPi Command Line
Copyright 2011 Kuniteru Asami 7
Copyright 2011 Kuniteru Asami 8
WebPi Command Line (2)
md "%~dp0appdata"reg add "hku\.default\software\microsoft\windows\currentversion\explorer\user shell folders" /v ^ "Local AppData" /t REG_EXPAND_SZ /d "%~dp0appdata" /f"%~dp0webpicmdline.exe" /AcceptEula /Products:PHP53 >>log.txt 2>>err.txtreg add "hku\.default\software\microsoft\windows\currentversion\explorer\user shell folders" /v ^ "Local AppData" /t REG_EXPAND_SZ /d %%USERPROFILE%%\AppData\Local /f
<?xml version="1.0" encoding="utf-8"?><ServiceDefinition name="ProjectName" xmlns="http://schemas.microsoft.com/ServiceHosting/2008/10/ServiceDefinition"> : <WebRole> : <Startup> <Task commandLine="startup.cmd" executionContext="elevated" taskType="simple" /> </Startup> </WebRole></ServiceDefinition>
ServiceDefinition.csdef
startup.cmd ( 出力ディレクトリ:常にコピーする or 新しい場合はコピーする )
古い (Azure SDK 1.2 以前の ) ドキュメントの手順では Azure 上でPHP が利用できるようになりません。
以下のサイトが参考になります。◦ http://blogs.gine.jp/kusa/archives/1407◦ http://blogs.gine.jp/taka/archives/1978
Microsoft Visual Web Developer
Copyright 2011 Kuniteru Asami 9
http://www.windowsazure4e.org/ 添付されている Windows Azure SDK for PHP や
PHP contributions(php_azure.dll) のバージョンが古いことがあります。 リモートデスクトップの設定など、 GUI で対応していない機能があります。
Eclipse PDT (windowsazure4e)
Copyright 2011 Kuniteru Asami 10
参考 ) http://download.microsoft.com/download/E/C/7/EC727343-C72D-4F95-B96B-8FAAC3FB675A/3_eclipse.pdf
CSPack( パッケージ作成 ) :http://msdn.microsoft.com/en-us/library/gg432988.aspxCSRun( エミュレータ実行 ):http://msdn.microsoft.com/en-us/library/gg433001.aspx
Windows Azure SDK に標準添付されています。 コマンドプロンプトで、
デプロイパッケージの作成や開発ファブリックでの実行ができます。
ServiceConfiguration.cscfg, ServiceDefinition.csdefを、自分で作成する必要があります。
CSPack & CSRun Command-Line Tool
Copyright 2011 Kuniteru Asami 11
rem コンピュートエミュレータ用パッケージの作成cspack ServiceDefinition.csdef /copyonly /out:SamplePackage.csx /sitePhysicalDirectories:WebRole;Web;wwwroot /role:WebRole;wwwrootrem コンピュートエミュレータで実行csrun SamplePackage.csx ServiceConfiguration.cscfg /launchbrowserrem コンピュートエミュレータを停止し削除csrun.exe /removeall
コンピュートエミュレータ ( 開発環境 ) での実行例
cspack ServiceDefinition.csdef /sitePhysicalDirectories:WebRole;Web;wwwroot /role:WebRole;wwwroot
デプロイ用パッケージの作成例
参考 ) http://download.microsoft.com/download/E/C/7/EC727343-C72D-4F95-B96B-8FAAC3FB675A/4_cui.pdf
http://azurephptools.codeplex.com/ php コマンドを利用してコマンドプロンプトで、
デプロイパッケージの作成や開発ファブリックでの実行ができます。
ServiceConfiguration.cscfg, ServiceDefinition.csdef は、用意されているテンプレートから作成されます。◦ 細かい変更をコマンドライン引数で指定できます。
Windows Azure Command-line Tools for PHP
Copyright 2011 Kuniteru Asami 12
php package.php ^ --project=MyProject ^ --source=..\php_source\ ^ --phpRuntime="C:\Program Files\PHP\" ^ --target=..\workspace\
デプロイパッケージ作成例php package.php ^ --project=MyProject ^ --source=..\php_source\ ^ --phpRuntime="C:\Program Files\PHP\" ^ --runDevFabric ^ --cleanRebuild
コンピュートエミュレータ ( 開発環境 ) での実行例
Windows Azure SDK for PHP Windows Azure - PHP contributions OData SDK for PHP AppFabric SDK for PHP Developers
Azure で便利な PHP 用 API
Copyright 2011 Kuniteru Asami 13
http://phpazure.codeplex.com/PHP から Windows Azure Platform 特有の機能などを利用することができます。 Azure Storage(Blob, Table, Queue) へのアク
セス PHP セッション管理 Azure サービス管理 障害や性能などのモニタリングや診断
Copyright 2011 Kuniteru Asami 14
Windows Azure SDK for PHP
Japan Windows Azure User Group
PHP on Windows Azurehttp://r.jazug.jp/wiki/tech/php
Microsoft
使える Windows Azurehttp://www.microsoft.com/japan/windowsazure/campaign/mobile/chapter.aspx
Copyright 2011 Kuniteru Asami 15
PHP on Windows Azure 参考サイト
http://www.windows-maniax.com/
Copyright 2011 Kuniteru Asami 16
Windows Maniax
Azure ユーザー会にご参加ください
http://r.jazug.jp