Web Deploy (aka MsDeploy) возвращает ERROR_CONNECTION_TERMINATED
Я пытаюсь выполнить из командной строки msdeploy, например, следующую команду:
"C:\Program Files\IIS\Microsoft Web Deploy V3\msdeploy.exe" -verb:sync
-source:package="Templates\TemplateAppPool.zip"
-dest:appPoolConfig="MyAppPool",computerName="...",userName="...",password="..."
-replace:objectName=processModel,targetAttributeName=idleTimeout,replace=00:45:00
-replace:objectName=add,targetAttributeName=managedPipelineMode,replace=Integrated
-allowUntrusted
И получить следующую ошибку
Info: Using ID '0b2ec654-ae21-4848-897d-f644d95b4bfa' for connections
to the remote server.
Error Code: ERROR_CONNECTION_TERMINATED
More Information: Web Deploy experienced a connection problem with
the server and had to terminate the connection. Contact your server
administrator if the problem persists. Learn more at:
http://go.microsoft.com/fwlink/?LinkId=221672#ERROR_CONNECTION_TERMINATED
Я добавил -allowUntrusted, чтобы предотвратить возможные ошибки с сертификатами на целевой машине. Потому что, когда я пытаюсь сделать это с VS 2013, он показывает мне ошибку/предупреждение о сертификате на целевой машине. В любом случае, я принимаю неверный сертификат, и он говорит далее, что все правильно с подключением, но
когда я пытаюсь опубликовать с VS 2013, я получаю следующие
Start Web Deploy Publish the Application/package to
https://remotehost:8172/msdeploy.axd?site=Default%20Web%20Site ...
C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio\v11.0\Web\Microsoft.Web.Publishing.targets(4193,5):
Error : Web deployment task failed. (Unknown ProviderOption:DefiningProjectFullPath.
Known ProviderOptions are:skipInvalid.)
Publish failed to deploy.
Сама команда прекрасна, потому что, когда я меняю целевую машину на команду на локальную, она работает.
Ответы
Ответ 1
Fiddler, а другое локальное программное обеспечение на основе прокси-сервера может помешать подключению к серверу. Попробуйте отключить или закрыть Fiddler и повторить попытку подключения.
Если Fiddler не используется, Документация по веб-развертыванию Microsoft охватывает большинство других проблем с веб-развертыванием.
Ответ 2
У меня была такая же проблема. Решение, данное здесь, похоже, работает: Веб-развертывание приводит к слишком длинному запросу только в VS2012
Рабочим решением было использование https вместо http для развертывания. Это генерирует предупреждения сертификатов в моей среде, но, по крайней мере, позволяет мне развертывать.