2

管理者であるIISサーバーに展開する単純なアプリケーションを取得できないようです。VS2010から表示されるエラーメッセージは次のとおりです(ドメイン名は無実を保護するために変更されています)。

    ------ Build started: Project: HelloWorldWeb, Configuration: Debug Any CPU ------
      HelloWorldWeb -> D:\$Data\mhtest\HelloWorldWeb\bin\HelloWorldWeb.dll
    ------ Publish started: Project: HelloWorldWeb, Configuration: Debug Any CPU ------
    Transformed Web.config using Web.Debug.config into obj\Debug\TransformWebConfig\transformed\Web.config.
    Auto ConnectionString Transformed Account\Web.config into obj\Debug\CSAutoParameterize\transformed\Account\Web.config.
    Auto ConnectionString Transformed obj\Debug\TransformWebConfig\transformed\Web.config into obj\Debug\CSAutoParameterize\transformed\Web.config.
    Copying all files to temporary location below for package/publish:
    obj\Debug\Package\PackageTmp.
    Start Web Deploy Publish the Application/package to http://www.myserver.com/MSDEPLOYAGENTSERVICE ...
    C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio\v10.0\Web\Microsoft.Web.Publishing.targets(3847,5): Error : Web deployment task failed.(Remote agent (URL http://www.myserver.com/MSDEPLOYAGENTSERVICE) could not be contacted.  Make sure the remote agent service is installed and started on the target computer.)
    Make sure the site name, user name, and password are correct. If the issue is not resolved, please contact your local or server administrator.
    Error details:
    Remote agent (URL http://www.myserver.com/MSDEPLOYAGENTSERVICE) could not be contacted.  Make sure the remote agent service is installed and started on the target computer.
    An unsupported response was received. The response header 'MSDeploy.Response' was 'V1' but 'v1' was expected.
    The remote server returned an error: (401) Unauthorized.
    Publish failed to deploy.
    ========== Build: 1 succeeded or up-to-date, 0 failed, 0 skipped ==========
    ========== Publish: 0 succeeded, 1 failed, 0 skipped ==========

これまでのところ:

  • IISサーバーにWebDeploy3.0をインストールしました
  • インストールされたWeb管理サービス。まだこれを使用しようとはしていないと思いますが、当面は(8172ではなく)ポート80を介してすべてを実行したいと思います。
  • サービスMsDepSvcが管理者のメンバーであるユーザーとして実行されていることを確認しました
  • デプロイ中にVS2010で使用する資格情報が、管理者のメンバーであるユーザーであることを確認しました
  • 入力したサイトとアプリケーションが、IISサーバーに既に存在するものと一致していることを確認しました

その他の情報:

  • IISサーバーはリモートであり、ファイアウォールの背後にあり、ワークステーションのドメイン上にはありません。基本認証を使用してこれを行う必要があると思いますが、これがまだデフォルトでない場合は、これを指定する方法を見つけることができません。
  • ブラウザを開いてhttp://www.myserver.com/MSDEPLOYAGENTSERVICEに移動すると、資格情報の入力を求められます。有効な管理者クレデンシャルを入力すると、空白の画面が表示されます。ネットワークトレースは、サーバーが401で応答したことを示しています。
4

1 に答える 1

5

私はなんとかそれを機能させることができました。トラブルシューティングドキュメントに戻りました: http ://www.iis.net/learn/publish/troubleshooting-web-deploy/troubleshooting-common-problems-with-web-deploy

それが401エラーを参照している方法の約3分の1、私はそれをより詳しく読んでいます:

非管理者としてリモートエージェントサービスにアクセスしようとしています

症状

Microsoft.Web.Deployment.DeploymentException:

Could not complete the request to remote agent URL 'http://DestinationServer/msdeployAgentService'. ---> System.Net.WebException: The remote server returned an error: (401) Unauthorized.

根本的な原因

リモートエージェントサービスでは、発信者がAdministratorsグループのメンバーであるか、Administratorsグループに追加されたドメインアカウントのメンバーである必要があります。ビルトインアカウントではないローカル管理者は、Web Deploy 2.0のバグのため、リモートエージェントサービスを使用できません。

修正/回避策

管理者の資格情報を提供する

したがって、「an」管理者アカウントを使用する必要はなく、「the」管理者アカウントを使用する必要がありました。紛らわしいダブルネガティブを使用せず、現在のバージョン、つまり執筆時点で3.0にも存在するバグについて明らかだった場合、これに初めて気付いたかもしれません。

于 2013-02-19T01:36:52.530 に答える