Próbuję zrozumieć, w którym scenariuszu będę musiał użyć takiego polecenia:
netsh http add urlacl url=http://server1:1234/ user=Everyone
Czy to jak używanie hosts
pliku, w którym mogę podłączyć określony adres do mojego komputera? (Nie sądzę).
W docs nie są jasne (do mnie):
Netsh to narzędzie skryptowe z wiersza poleceń, które pozwala lokalnie lub zdalnie wyświetlać lub modyfikować konfigurację sieci aktualnie uruchomionego komputera. Netsh zapewnia również funkcję skryptową, która pozwala na uruchamianie grupy poleceń w trybie wsadowym na określonym komputerze. Netsh może również zapisać skrypt konfiguracyjny w pliku tekstowym w celu archiwizacji lub w celu ułatwienia konfiguracji innych serwerów.
Pytanie:
Czy ktoś może podać scenariusz z życia (+ wdrożenie), w którym będę chciał go użyć?
Informacje dodatkowe: Przeczytałem to pytanie, gdy facet, który próbował uzyskać dostęp (za pomocą C #) do:
http://localhost:1234
działa, ale
http://server1:1234
zawodzi
(Jednak - nie rozumiem, dlaczego nie wykorzystał hosts
pliku, który mógłby go rozwiązać) - Ale potem inna osoba odpowiedziała, że netsh
wykona zadanie.
Więc chyba coś mi brakuje.
Odpowiedzi:
Przydałoby się to
netsh http
podczas modyfikowania konfiguracjihttp.sys
, która jest zupełnie inna niżhosts
plik, pracując na znacznie niższym poziomie systemu Windows. Ten poziom jest ten, który zajmuje się prowadzenie serwera HTTP lokalnie w komputerze , więc zajmuje się wnioski przyjście na komputerze, a nie te, które dzieje się w Internecie.Oto architektura systemu Windows do obsługi żądań adresów URL:
http.sys
to sterownik, który nasłuchuje ruchu HTTP i wysyła żądania na podstawie adresów URL do procesów, dzięki czemu wiele procesów może nasłuchiwać ruchu HTTP na tym samym porcie.http.sys
został wprowadzony w systemie Windows Server 2003. Wcześniej aplikacje właśnie otwierały gniazdo w punkcie końcowym (IP: Port), nasłuchując ruchu przychodzącego i analizując go. Problem polegał na tym, że uniemożliwiało to wszystkim aplikacjom korzystanie z portu 80 (http) i 443 (https), ponieważ w modelu gniazda tylko jedna aplikacja może nasłuchiwać punktu końcowego w danym momencie.Gdy serwer sieci Web Internetowych usług informacyjnych (IIS) lub dowolna aplikacja korzystająca z interfejsu API serwera HTTP Server nasłuchuje na ścieżce żądań HTTP, musi zarejestrować prefiks adresu URL
http.sys
. Proces ten nazywamy rejestracją .Gdy przychodzące żądanie zostanie odebrane
http.sys
i dostarczone do właściwej zarejestrowanej aplikacji, nazywa się to routingiem .Każda aplikacja działająca w trybie administratora może zarejestrować adres URL.
netsh http add urlacl
Do otrzymania żądania należy użyć aplikacji innej niż administrator .Wniosek: ponieważ nie budujesz niskopoziomowego serwera URL działającego w trybie innym niż administrator, nie masz powodu, aby z niego korzystać
netsh http add urlacl
.Bibliografia :
źródło