IIS 8.0 以降での Web 配置のインストールと構成
作成者: Jim van de Erve
まとめ
このチュートリアルでは、管理者または非管理者による配置のための IIS 8.0 以降の Web 配置のインストールと構成の手順を示します。 これは、クライアントにサーバーの管理者資格情報がない場合でも、クライアントが Web 配置を使用して Web サイトのコンテンツをサーバーに発行できるようにするために必要な手順です。
Windows 8.0 および 8.1 には、リモート接続に必要な Web 管理サービスは付属しません。 詳細については、「Windows 8.0 または 8.1 ではリモート発行を設定できない」を参照してください。
Web 配置のインストール
Web 配置 MSI を使用して Web 配置をインストールできます。
Web 配置をインストールするための Web 配置インストーラーの使用
MSI インストーラーを使用して Web 配置を直接インストールできます。 MSI を直接使用することは、推奨または必須の依存製品を個別にインストールする必要があるため、初心者ユーザーには通常推奨されません。 Web PI の代わりに MSI を使用して Web 配置をサーバーにインストールする場合、次の制限により問題が発生する可能性があります。
- MSI では、SQL Server データベースの配置に必要な SQL 共有管理オブジェクト (SMO) はインストールされません。 このコンポーネントは Web PI を使用してインストールされ、SQL Server データベースの配置を有効にすることができます。
- Web 管理サービスがインストールされていない場合、MSI では Web 管理サービス ハンドラー コンポーネントがインストールされません。 ハンドラー コンポーネントは、非管理者による配置のために必要です。 ハンドラー コンポーネントのインストールを有効にするには、管理サービスを含む Windows コンポーネント IIS を最初にインストールする必要があります。
- Web 配置 MSI を使用して Web 配置を直接インストールするとき、PowerShell v2 以降がインストールされていない限り、Web 管理サービスは非管理者による配置用に構成されません。
Web 配置インストーラーを使用すると、Web 配置を Windows 2012 Server 以降または Windows 8.0 以降にインストールできます。
.msi ファイルから Web 配置をインストールするには:
- Web 配置のダウンロード ページに移動します。
- Web 配置のダウンロード ページで、[Web 配置のダウンロード] セクションに移動し、必要な言語に対応する x86 または x64 を選択します。
- Web 配置の .msi を実行して、インストーラー ウィザードを進め、[カスタム セットアップ] ページで必要な機能を選択します。
委任された非管理者による配置用のサイトの構成
Web 配置をインストールした後、非管理者による発行に対するすべてのサーバー レベルでの構成は完了しますが、サイト レベルでは追加の構成が必要になります。 このサイト構成は、PowerShell または IIS マネージャーを使用して実現できます。
Windows 8.0 または 8.1 ではリモート発行を設定できない
Windows 8.0 または 8.1 の IIS でホストされているサイトでは、Web 配置を使用したリモート発行を設定することができません。 この理由は、Windows 用のクライアント SKU には、リモート接続に必要な Web 管理サービスが付属しないためです。 この結果、Windows 8.0 または 8.1 では、リモート発行を構成するために必要な [IIS マネージャーのアクセス許可]アイコンと [Web 配置による発行の有効化] 配置オプションが、IIS マネージャーで使用できません。
役割と機能の追加ウィザードを使用して Windows Server 2012 以降に管理サービスの役割をインストールすると、Web 管理サービスがインストールされて有効になります。 [IIS マネージャーのアクセス許可] アイコンは、IIS マネージャーの [管理] 領域で Web サイトに対して使用でき、[Web 配置による発行の有効化] 配置オプションは、IIS マネージャーで Web サイトの [配置] メニューでは使用できます。 これらの機能があれば、Web 管理サービスによって、リモート コンピューターから Web サーバーへの Web 配置を使用した発行を構成できます。
PowerShell を使用した非管理者のための Web 配置の構成
- Web 配置の PowerShell スクリプトを使用して、新規または既存の非管理者ユーザーのために、新しいサイトを作成するか、既存の Web サイトでアクセス許可を設定します。 詳細については、「Web 配置のセットアップを自動化するための PowerShell スクリプト」および「Web 配置 PowerShell コマンドレット」を参照してください。
IIS マネージャーを使用した非管理のための Web 配置の構成
次の手順では、IIS マネージャー UI を使用して既存のユーザーに対する既存サイトでの発行を構成します。
IIS マネージャーを起動します ([サーバー マネージャー] を開き、[ツール] をクリックしてから [IIS マネージャー] を開きます)。
[サイト] ノードを展開して、サイトをクリックします。
[ユーザーまたはグループの選択] ダイアログ ボックスの [選択するオブジェクト名を入力してください] に、サイトに対する発行アクセス許可を与える管理者以外の Windows ユーザーの名前をドメインと共に入力します。 [名前の確認] をクリックし、名前が確認されたら、[OK] をクリックします。
構成しているサイトを右クリックし、[配置] をポイントしてから、[Web 配置による発行の有効化...] をクリックします。次の UI が表示されます。
注: サイトのメニューに [配置] コマンドが表示されない場合は、IIS マネージャーを閉じてから再度開きます。
[発行アクセス許可を付与するユーザーを選択します] の下向き矢印をクリックし、[IIS マネージャーのアクセス許可] に入力したユーザーを選択します。
[設定] をクリックします。
次のログ行が表示されます。
- 'NonAdminUser' に対して発行が有効になりました
C:\inetpub\wwwroot\test
に対する 'NonAdminUser' のフル コントロールが付与されました- 設定ファイル
C:\Users\janedoe\Desktop\CONTOSO\_johndoe\_Default Web Site.PublishSettings
が正常に作成されました
非管理者 Windows ユーザー (NonAdminUser) がサイトに発行できるようになりました。
管理者による配置のために Web 配置をインストールして構成する
要件:
前述のいずれかの手順を使用して Web 配置をインストールします。
一般的な問題のトラブルシューティング:
Web 配置の既存のインストールをアップグレードする場合は、管理コマンド プロンプトで次のコマンドを実行して、ハンドラーおよびエージェント サービスを再起動してください。
net stop msdepsvc & net start msdepsvc
net stop wmsvc & net start wmsvc
使用しているサービスへの接続がファイアウォールで許可されていることを確認してください。 Web Deployment Agent Service (MsDepSvc) は既定ではポート 80 でリッスンし、Web 管理サービス (WmSvc、"ハンドラー" とも呼ばれます) は既定ではポート 8172 でリッスンします。
MsDepSvc は、あらかじめ登録された Administrator アカウントを使用するか、Administrators グループに追加されたドメイン アカウントから実行する必要があります。 ビルトイン アカウントではないローカル Administrator は、MsDepSvc では機能しません。
.NET 4.0 が IIS に登録されていないことを確認します。
現象: .NET 4.0 がインストールされていますが、IIS に .NET 4.0 アプリケーション プールまたはハンドラー マッピングがありません。 .NET 4.0 を使用するアプリケーション (WebMatrix のサイト テンプレート アプリケーションに基づくアプリケーションなど) を発行した後は、それらを参照することはできません。
原因: お使いのマシンには、IIS がインストールされる前に .NET 4.0 がインストールされていました。
解決策: 次のコマンドを実行して .NET 4.0 を IIS に登録します。
%systemdrive%\Windows\Microsoft.NET\Framework64\v4.0.30319\aspnet_regiis.exe -iru