Od Windows 8 do Windows Server 2012 (IIS 8) z zainstalowanymi i działającymi usługami zarządzania siecią Web, mogę używać Menedżera IIS na W8 do zarządzania serwerem zdalnym, ale otrzymuję 404.7 z WMSvc, gdy wykonuję następujące polecenie:
msdeploy.exe" -verb:dump -source:contentPath=c:\InetPub\wwwroot,computerName=https://uktnws01:8172/MsDeploy.axd,userName=corp\administrator,password=WMSvcIsCrap,authType=Basic -allowUntrusted
Wypróbowałem różne kombinacje i parametry. Mogę telnetować się do tego portu, wiem, że jest otwarty.
Po prostu usuwam funkcję usługi zarządzania z systemu Windows i ponownie uruchamiam. Naleję sobie szkockiej i zrobię przekąski. W międzyczasie, jeśli masz jakieś pomysły, podziel się nimi.
Dołącz do mojego bloga na żywo poniżej i śledź akcję.
Zaktualizuj 1
Po usunięciu usługi zarządzania otrzymuję teraz
Błąd: nie można połączyć się z serwerem zdalnym Błąd: nie można nawiązać połączenia, ponieważ maszyna docelowa aktywnie odmówiła 192.168.2.22:8172 Liczba błędów: 1.
Gdzie druga linia to nowa wiadomość! Woohoo.
Zaktualizuj 2
Okej, więc teraz sytuacja się pogarsza. Od czasu ponownej instalacji zdalna konsola IIS zaalarmuje certyfikat, a następnie powie:
Serwer nie akceptuje połączeń zdalnych.
Ale myślę, że dzieje się tak dlatego, że prawdopodobnie nie włączyłem ponownie zdalnego zarządzania, oprócz zainstalowania tego cholerstwa.
Zaktualizuj 3
Po włączeniu zdalnego zarządzania zdalne usługi IIS działają ponownie, ale powrócił błąd 404. Tylko w interesie SEO, oto pełny błąd:
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.
Zaktualizuj 4
Wypróbowałem to samo polecenie na innym serwerze sieciowym przez VPN do klienta i to działa! Wygląda na to, że IIS jest fubar'ed na mojej absolutnie nowej kompilacji z 2012 roku.
Zaktualizuj 5
Włączyłem śledzenie nieudanych żądań dla WMSvc i zauważyłem, że 404.7 pochodzi z modułu RequestFilteringModule. 404.7 to „Odmowa rozszerzenia pliku” zgodnie z dokumentacją.
http://www.iis.net/configreference/system.webserver/security/requestfiltering
Dodanie jawnej reguły serwera dla plików .axd nie pomaga jednak. Ciekawie jest jednak zobaczyć ten moduł, ponieważ nakłada ograniczenia na długość adresów URL i rozmiary treści. Czy możesz sobie wyobrazić rozwiązanie tego problemu w aplikacji WCF hostowanej przez usługi IIS! Ha ha. Naprawdę płaczę.
Zaktualizuj 6
Usuwam filtrowanie żądań, co oznacza usunięcie ASP.NET i różnych innych rzeczy. Potrzebują opcji ponownej instalacji funkcji i zależności systemu Windows za jednym zamachem, ponieważ piszemy nierzetelne oprogramowanie.
Zaktualizuj 7
Ponownie instaluję wszystko, a potem jakiś Australijczyk imieniem Richard pojawia się znikąd i całkowicie wyjaśnia, że Web Deploy nie jest w rzeczywistości częścią WMSvc w standardzie, nawet w IIS 8 i że muszę zainstalować Web Deploy.
Ja również. Następnie wyłączam MsDepSvc, który jest drugą częścią, którą instaluje (co uważałem za całość Web Deploy), ponieważ jest do bani na porcie 80 i powstrzymuje moduły równoważenia obciążenia przed zobaczeniem wyłączonej usługi IIS.
I to działa. Mogę iść do łóżka.