fragen stichworte

Wie führe ich VisualSVN Server auf Port 443 aus, auf dem IIS auf demselben Server ausgeführt wird?

Server 2008 R2 SP1
VisualSVN Server 2.1.6

Der IIS-Server verfügt über etwa 10 Standorte. Einer von ihnen verwendet https über Port 443 mit den folgenden Bindungen:

http x.x.x.39:80 site.com
http x.x.x.39:80 www.site.com
https x.x.x.39:443

VisualSVN-Server-Eigenschaften

server name: svn.SomeSite.com
server port: 443
Server Binding: x.x.x.40

Keine Websites auf IIS hören x.x.x.40.

Beim Starten des VisualSVN-Servers werden die folgenden Fehler ausgegeben:

  • make_sock: could not bind to address x.x.x.40:443 (OS 10013) An attempt was made to access a socket in a way forbidden by its access permissions.
  • no listening sockets available, shutting down

Wenn ich Site.com auf IIS stoppe, wird der VisualSVN-Server ohne Probleme gestartet. Wenn ich den VisualSVN-Server an Port 8443 binde und Site.com starte, wird der VisualSVN-Server ohne Probleme gestartet.

Mein Ziel ist es, mit einer normalen URL auf den VisualSvn-Server zugreifen zu können, d. h. mit einer Portnummer in der Adresse:

https://svn.site.com vs https://svn.site.com:8443

Was muss konfiguriert werden, damit VisualSVN Server auf Port 443 mit IIS auf demselben Server ausgeführt werden kann?

Bearbeiten/Antworten

Die Antwort von Ivan hat mich in die richtige Richtung gelenkt. Für alle anderen, die sich mit diesem Problem beschäftigen, finden Sie hier weitere Informationen.

Auch wenn in meinem IIS keine Bindungen für die IP-Adresse festgelegt wurden, die ich für VisualSvn verwende, wird IIS die IP-Adresse als Geisel nehmen, wenn IIS nicht explizit mitgeteilt wird, welche IP-Adressen zu hören sind.

Es gibt keine grafische Benutzeroberfläche in Win Server 2k8, um die IP-Adressen für das Abhören von IIS zu konfigurieren. IIS überwacht standardmäßig alle dem Server zugewiesenen IP-Adressen.

Im Folgenden können Sie IIS so konfigurieren, dass nur die gewünschten IP-Adressen überwacht werden:

  1. Öffnen Sie eine Eingabeaufforderung
  2. Geben Sie Folgendes ein: netsh
  3. Geben Sie Folgendes ein: http
  4. enter: show iplisten -> Dies zeigt eine Tabelle der IP-Adressen an, die IIS überwacht. Standardmäßig ist die Tabelle leer (das heißt, IIS hört auf alle IPs)
  5. Geben Sie für jede IP-Adresse, die IIS abhören soll, Folgendes ein: add iplisten ipaddress=x.x.x.x
  6. Geben Sie Folgendes ein: show iplisten -> Sie sollten jetzt alle IP-Adressen sehen, die dem Listening Table hinzugefügt wurden.
  7. IIS beenden und dann zurücksetzen.

Jeder dieser Befehle kann auch direkt ausgeführt werden, d. h. netsh http show iplisten

Wenn Sie eine IP-Adresse aus dem Listening Table löschen müssen:

  1. Öffnen Sie eine Eingabeaufforderung
  2. Geben Sie Folgendes ein: netsh
  3. Geben Sie Folgendes ein: http
  4. Geben Sie Folgendes ein: delete iplisten ipaddress=x.x.x.x
  5. IIS beenden und dann zurücksetzen.

antworten

Bereits geantwortet Verwenden Sie den folgenden Befehl:

netsh http add iplisten ipaddress=x.x.x.39

Zwei separate Prozesse können nicht an denselben Port an derselben Adresse gebunden werden.

Eine Paaroption besteht darin, dem Server eine zweite IP-Adresse hinzuzufügen oder einen Reverse Proxy zu verwenden, der beide Standorte auf 443 über denselben Prozess bedienen kann.