fragen stichworte

Ist es möglich, Domänennamen an den VisualSVN-Server und IIS auf der einen Box zu binden, ohne einen Port zu verwenden?

Ich habe einen Computer mit VisualSVN Server für SCM und IIS, auf dem ein Web-Front-End gehostet wird, um einige Repository-Verwaltungsaufgaben auszuführen. Idealerweise möchte ich an jeden einen anderen Domänennamen binden, aber es scheint, dass ich dies nicht tun kann, ohne einen Port für mindestens einen der Namen anzugeben. Es sieht so aus, als könnten Sie nicht zwei Webserver auf einem Rechner betreiben und Port 80-Anforderungen an jeden Server richten, auch wenn die Anforderungen an unterschiedliche Domänennamen gerichtet sind. Ist das der Fall oder gibt es einen Ausweg? Ich zögere nicht, am Ende eine Portnummer zu setzen, da sie nicht besonders benutzerfreundlich ist.

antworten

Sie können VisualSVN Server und IIS nebeneinander am selben Port ausführen, indem Sie mehrere IP-Adressen an Netzwerkschnittstellen verwenden: http://www.itsyourip.com/networking/how-to-add-multiple-ip-address-in-windows-2000xp2003/

Führen Sie die folgenden Schritte aus, um die Bindung von VisualSVN Server an nur bestimmte Schnittstellen zu konfigurieren:

  1. Führen Sie den VisualSVN Server Manager aus
  2. Klicken Sie mit der rechten Maustaste auf Root-Element und Wählen Sie Eigenschaften
  3. Wechseln Sie zur Registerkarte Netzwerk
  4. Wählen Sie das Optionsfeld "Diese IP-Adressen" aus.
  5. Klicken Sie auf Hinzufügen. Geben Sie die IP-Adresse von ein Schnittstelle zum Abhören
  6. Klicken Sie auf OK, um die Schnittstelle hinzufügen zu schließen Dialog
  7. Klicken Sie auf OK, um das Eigenschaftenfenster zu schließen

Führen Sie die folgenden Schritte aus, um die IIS-Überwachung für eine bestimmte Schnittstelle zu konfigurieren:

  1. Eingabeaufforderung mit erhöhten Rechten
  2. starten
  3. Führen Sie den folgenden Befehl aus:

    netsh http add iplisten ipaddress=IPADDRESS
    

Eine Alternative: Wenn Sie über die richtige Art von Firewall/Proxy-Server auf Anwendungsebene verfügen, der URL neu schreiben kann, können Sie alle Backend-Dienste auf einheitlichen Ports belassen und über die Firewall/Proxy alle auf Port 80 veröffentlichen mit verschiedenen URLs.

Der ISA-Server von Microsoft ist genau dazu in der Lage. Der ISA-Server kann eine eingehende Anforderung aufbrechen, die URL überprüfen und die Anfrage auf der Grundlage der gefundenen URL an eine völlig andere URL und/oder einen anderen Port umleiten. Dies sorgt für eine sehr sichere Konfiguration, da der Back-End-Server immer nur mit der Firewall kommuniziert und es keinen direkten Datenverkehr gibt.

In diesem Szenario leiten Benutzer Anfragen an den Firewall-/Proxy-Server und niemals direkt an den tatsächlichen Back-End-Server.

ISA Server ist eine Standardkomponente der Small Business Server 2003 Premiun Edition, die jedoch für die Version 2008 nicht mehr verwendet wird.

Diese Technik kann funktionieren und ich habe mehrere IIS-Backend-Server veröffentlicht, die mit dieser genauen Methode veröffentlicht wurden. Bei Apache-basierten Lösungen, die auf demselben System wie IIS ausgeführt werden, habe ich jedoch die Verwaltung mehrerer IP-Adressen vereinfacht der Systeme verwenden vollständig separate IP-Adressen, wie in einer früheren Antwort vorgeschlagen wurde.

Sie müssen immer zwei Ports verwenden, wenn Sie Dienste konkurrieren müssen. Sie können jedoch den zweiten Port maskieren, sodass er normal erscheint.

Sie machen dies mit einem Reverse Proxy. Grundsätzlich teilen Sie dem Webhost mit: 80 mit, alle Anforderungen von /SVN/ an http://localhost:81 (oder in Ihrem Fall alles über www.example.com) weiterzuleiten.

In IIS 6 verwenden wir Helicon ISAPI Re-Write. IIS7 verfügt möglicherweise über eine integrierte Funktion, die ich noch nie überprüft habe.