Ich versuche zu verstehen, in welchem Szenario ich einen solchen Befehl verwenden muss:
netsh http add urlacl url=http://server1:1234/ user=Everyone
Ist es so, als würde hosts
ich die Datei verwenden, in der ich eine bestimmte Adresse mit meinem Computer verbinden kann? (Ich glaube nicht).
Die Dokumente sind (für mich) nicht so klar:
Netsh ist ein Befehlszeilen-Dienstprogramm, mit dem Sie die Netzwerkkonfiguration eines aktuell ausgeführten Computers entweder lokal oder remote anzeigen oder ändern können. Netsh bietet auch eine Skriptfunktion, mit der Sie eine Gruppe von Befehlen im Stapelmodus für einen bestimmten Computer ausführen können. Netsh kann ein Konfigurationsskript auch zu Archivierungszwecken oder zur Konfiguration anderer Server in einer Textdatei speichern.
Frage:
Kann jemand bitte ein reales Szenario (+ Implementierung) liefern, in dem ich es verwenden möchte?
Zusätzliche Informationen: Ich habe diese Frage gelesen , bei der ein Typ, der versucht hat (über C #) auf Folgendes zuzugreifen:
http://localhost:1234
funktioniert, aber
http://server1:1234
schlägt fehl
(Allerdings - ich verstehe nicht, warum er nicht die hosts
Datei verwendet hat, die es lösen könnte) - Aber dann hat eine andere Person geantwortet, netsh
die den Job erledigen wird.
Ich vermisse hier wohl etwas.
Antworten:
Sie würden verwenden,
netsh http
wenn Sie die Konfiguration von ändernhttp.sys
, die sich völlig von derhosts
Datei unterscheidet, und auf einer viel niedrigeren Windows-Ebene arbeiten. Diese Ebene ist die, dass Griffe von einem HTTP - Server das läuft lokal auf Ihrem Computer , so befasst sich mit Anfragen kommen in Ihrem Computer, anstatt die , die gehen aus dem Internet.Dies ist die Architektur in Windows zum Bereitstellen von URL-Anforderungen:
http.sys
ist der Treiber, der den HTTP-Verkehr abhört und Anforderungen basierend auf der URL an Prozesse sendet, sodass mehrere Prozesse den HTTP-Verkehr auf demselben Port abhören können.http.sys
wurde zuvor in Windows Server 2003 eingeführt. Zuvor haben Anwendungen nur einen Socket auf einem Endpunkt (IP: Port) geöffnet, den eingehenden Datenverkehr abgehört und analysiert. Das Problem war, dass dies es allen Anwendungen unmöglich machte, Port 80 (http) und 443 (https) zu verwenden, da beim Socket-Modell jeweils nur eine Anwendung einen Endpunkt abhören kann.Wenn der IIS- Webserver (Internet Information Services) oder eine Anwendung, die die HTTP-Server-API verwendet, einen HTTP-Anforderungspfad abhört, muss ein URL-Präfix registriert werden
http.sys
. Wir nennen diesen Prozess Registrierung .Wenn eine eingehende Anfrage von ausgewählt
http.sys
und an die richtige registrierte Anwendung gesendet wird, wird dies als Routing bezeichnet .Jede Anwendung, die im Administratormodus ausgeführt wird, kann sich für eine URL registrieren. Eine Nicht-Administrator-Anwendung muss
netsh http add urlacl
zum Empfangen der Anforderung verwendet werden.Schlussfolgerung: Da Sie keinen einfachen URL-Server erstellen, der im Nicht-Administrator-Modus ausgeführt wird, haben Sie keinen Grund zur Verwendung
netsh http add urlacl
.Verweise :
quelle