От Windows 8 до Windows Server 2012 (IIS 8) с установленными и работающими службами веб-управления я могу использовать диспетчер IIS на W8 для управления удаленным сервером, но я получаю 404.7 от WMSvc, когда выполняю следующую команду:
msdeploy.exe" -verb:dump -source:contentPath=c:\InetPub\wwwroot,computerName=https://uktnws01:8172/MsDeploy.axd,userName=corp\administrator,password=WMSvcIsCrap,authType=Basic -allowUntrusted
Я перепробовал всевозможные комбинации и параметры. Я могу подключиться к этому порту через Telnet, я знаю, что он открыт.
Я просто удаляю функцию Management Service из Windows и перезапускаю. Я налью себе скотч и приготовлю закуски. А пока, если у вас есть идеи, поделитесь, пожалуйста.
Присоединяйтесь к моему живому блогу ниже и следите за действиями.
Обновление 1
После удаления службы управления я получаю
Ошибка: невозможно подключиться к удаленному серверу. Ошибка: не удалось установить соединение, потому что целевая машина активно отказалась от него 192.168.2.22:8172. Количество ошибок: 1.
Где 2-я строка - новое сообщение! Woohoo.
Обновление 2
Ладно, теперь дела идут все хуже и хуже. После переустановки удаленная консоль IIS выдаст предупреждение о сертификате и скажет:
Сервер не принимает удаленные подключения.
Но я думаю, это потому, что я, вероятно, не включил удаленное управление, помимо установки этой чертовой штуки.
Обновление 3
При включенном удаленном управлении удаленный IIS снова работает, но 404 вернулся. Вот полный текст ошибки в интересах SEO:
Error Code: ERROR_DESTINATION_NOT_REACHABLE More Information: Could not connect to the remote computer ("uktnws01"). On the remote computer, make sure that Web Deploy is installed and that the required process ("Web Management Service") is started. Learn more at http://go.microsoft.com/fwlink/?LinkId=221672#ERROR_DESTINATION_NOT_REACHABLE.
Error: The remote server returned an error: (404) Not Found.
Error count: 1.
Обновление 4
Пробовал ту же команду против другого веб-сервера через VPN для клиента, и это прекрасно работает! Похоже, IIS в восторге от моей новой сборки 2012 года.
Обновление 5
Я включил отслеживание неудачных запросов для WMSvc и увидел, что 404.7 поступает из модуля RequestFilteringModule. 404.7 - это «расширение файла запрещено» согласно документации.
http://www.iis.net/configreference/system.webserver/security/requestfiltering
Однако добавление явного правила сервера для файлов .axd не помогает. Интересно увидеть этот модуль, поскольку он накладывает ограничения на длину URL и размер контента. Можете ли вы представить себе решение этой проблемы в приложении WCF, размещенном в IIS! Ха-ха. Я правда плачу.
Обновление 6
Я удаляю фильтрацию запросов, что означает удаление ASP.NET и других вещей. Им нужен вариант «Переустановить все компоненты и зависимости Windows», потому что мы пишем ненадежное программное обеспечение.
Обновление 7
Я переустанавливаю все, и тут из ниоткуда появляется какой-то австралиец по имени Ричард и полностью объясняет, что веб-развертывание на самом деле не является частью WMSvc в стандартной комплектации даже в IIS 8, и что мне нужно установить веб-развертывание.
Так и делаю. Затем я отключаю MsDepSvc, который является другой частью, которую он устанавливает (что, как я думал, представляет собой полное веб-развертывание), потому что он засасывает порт 80 и не позволяет балансировщикам нагрузки видеть отключенную службу IIS.
И это работает. Я могу лечь спать.