IIS マネージャーを使用したパッケージのエクスポート
発行日 : 2008 年 10 月 29 日 (作業者 : faith_a(英語))
更新日 : 2009 年 3 月 18 日 (作業者 : faith_a(英語))
このクイック ガイドは、IIS マネージャーを使用して、SQL データベースを含む Web アプリケーションのパッケージを作成するのに役立ちます。
前提条件
このガイドの前提条件ソフトウェアは以下のとおりです。
.NET Framework 2.0 SP1 以降
Web 配置ツール(RC1)
IIS 7.0 または IIS マネージャーのリモート使用
SQL を使用している場合の前提条件ソフトウェア
注 : これらの前提条件ソフトウェアは、Web Platform Installer を使用して Web 配置ツールをインストールするとインストールされます。
SQL Server Express または Standard (ローカルまたはリモートのいずれか)
SQL Server 2008 管理オブジェクト (SMO) - x86 (英語) または x64
注 : Web 配置ツールをまだインストールしていない場合は、「Web 配置ツールのインストール」を参照してください。
パッケージのエクスポート
必ずバックアップを作成します。以下のコマンドを実行して、IIS 7.0 サーバーをバックアップします。
%windir%\system32\inetsrv\appcmd add backup "PreMsDeploy"
[スタート] の [ファイル名を指定して実行] をクリックし、inetmgr と入力して、IIS マネージャーを開きます。
IIS マネージャーで、サーバー ノードとサイト ノードを展開して、[Default Web Site/対象アプリ] を選択します。
右側の [操作] ウィンドウの [Manage Packages] で、[Export Application...] リンクをクリックしてウィザードを起動します。
既定では、選択したサイトまたはアプリケーション (この例では Default Web Site/MyApplication) とそのコンテンツ フォルダーがパッケージに含まれます。[Add Components] ボタンをクリックします。
1 行目は iisapp プロバイダー エントリで、アプリケーションが取り込まれることを示します。2 行目では、[Provider Name] ドロップダウンから dbFullSql プロバイダーを選択します。カーソルをプロバイダーの上に置くと、説明とパスの例が表示されます。この場合 dbFullSql プロバイダーは、パスとして接続文字列またはスクリプト ファイルを使用します。
[Path] 列に、データベースまたはスクリプト ファイルへのパスを入力します。
(例 : "Data Source=.\SQLExpress;Database=データベース名;User id=ユーザー名;Password=パスワード;"引用符は入力不要)[Provider Settings] 列で [...] ボタンをクリックします。
[Provider Settings] ダイアログでスクロール ダウンし、storeConnectionStringPassword を見つけます。値 true を入力し、[閉じる] をクリックします。
注 : 接続文字列の SQL Integrated Security=true を設定していない場合は、データベースをエクスポートするために、このプロバイダー設定を true に設定する必要があります。[OK] をクリックして、変更を受け入れます。
パッケージ コンテンツのツリー ビューにデータベースが表示されました。[次へ] をクリックして、ウィザードを続行します。
次に、自動的に生成されたパラメーターを変更する必要があります。これらのパラメーターは、前の手順で追加した 2 つのプロバイダーに基づいて生成されます。このパラメーターに、わかりやすい名前と説明を指定します。一覧の最初のパラメーター Parameter 1 を選択して、[Edit] ボタンをクリックします。
[Edit Parameter] ダイアログが表示されるので、これらの値を 1 つずつ編集します。
[Name] テキスト ボックスを編集します。これは、このアプリケーション パッケージをインストールするときに表示されるパラメーターの名前です。
次に、既定値があります。既定値を削除すると、このパッケージをインストールするユーザーは値を入力することが必要になります。削除しない場合は、ユーザーは既定値を選択できます。このパラメーターでは既定値を残します。
[Tags] のテキスト ボックスもあります。タグは、このパラメーターを特定の方法で表示するように UI に指示する文字列です。たとえばパスワード タグは、値をクリアテキストではなくアスタリスクで表示するように UI に指示します。iisApp タグは、これはアプリケーション パスであることを示すために使用され、UI によって特別に処理されます。
最後に [Description] テキスト ボックスがあります。これは、このパッケージをインストールしているユーザーが、パラメーターの値として何を入力するかを判断できるように表示される説明です。ここには、入力可能な値の例を記述すると役に立ちます。テキストを「Path to install this application (such as Default Web Site/Blog)」に変更します (かっこは不要)。
[OK] をクリックして、パラメーターの変更を受け入れます。
次に、SQL プロバイダーのパラメーターを変更します。一覧の "Parameter 2" エントリを選択して、[Edit] ボタンをクリックします。
これは、前のパラメーターの編集と同じプロセスです。新しいパラメーター名として、SQL Connection String を入力します。
既定値を削除します。これによってユーザーは、このパッケージのインストール時に新しい接続文字列を入力することが必要になります。
SqlConnectionString タグは、UI がこのパラメーターを接続文字列として表示する必要があることを示します。IIS マネージャーの UI の場合、ユーザーがさまざまな方法で接続文字列を編集できる接続文字列ビルダーが表示されます。それ以外の場合は、単に文字列として表示されます。
このパッケージをインストールしているユーザーに、接続文字列の入力が必要なことを知らせるために、説明を変更します。
[OK] をクリックして、パラメーターの変更を受け入れます。
. 次に、SQL Connection String パラメーターに 2 番目のパラメーター エントリを追加します。ビューで SQL Conection String パラメーターを選択し、[Add Parameter Entry] ボタンをクリックします。
アプリケーションの Web.config ファイル内の接続文字列をポイントするパラメーター エントリを作成します。パラメーター エントリには、入力対象の 3 つのフィールドがあることがわかります。
使用するパラメーターの種類を選択します。この場合、Web.config ファイルをポイントするため、XmlFile を選択します。
パラメーター エントリの範囲を入力します。範囲は、パッケージに格納されるファイルを示す正規表現です。この場合、Web.config ファイルを選択しますが、Web.config.bak も更新されることがないように、ファイルの開始を示す \\ とファイル名の終了を示す $ を追加します。
30. 次に [Match] を追加します。XmlFile パラメーター エントリの場合、[Match] には、XML ファイル内の特定の要素または属性を示す xpath クエリを指定します。接続文字列属性をポイントする xpath を追加します。[OK] をクリックして、このエントリを受け入れます。
このパッケージをインストールしているユーザーが、アプリケーション パス (このアプリケーションをインストールするサイトとアプリケーション名) を設定し、接続文字列を変更できるようにする (1 回目は SQL スクリプトを実行するときに変更し、2 回目は Web.config ファイル内部で変更) パラメーターが作成されました。[次へ] をクリックして次に進みます。
最後に、パッケージを保存する場所を選択します。この例では、C:\MyApplication.zip を選択しました。
ウィザードは、パッケージ プロセスを終了し、ディスクにパッケージを保存します。終了すると、実行したアクションの概要を示す [Summary] ページが表示されます。
まとめ
ここでは、Default Web Site に基づくパッケージの作成を行いました。このパッケージには、コンテンツ ファイル、フォルダーを IIS のアプリケーションとしてマークするエントリ、および SQL データベースを含むアプリケーションが含まれています。