Frage Kann IIS so konfiguriert werden, dass die Anfrage an einen anderen Webserver weitergeleitet wird?


Ich habe mehrere Webseiten eingerichtet auf einem IIS 6 Server, die durch Host Header unterschieden werden.

Ich möchte jedoch, dass eine der Sites von einem Linux / Apache-Server in meinem Netzwerk bedient wird. Muss ich ein Reverse-Proxy-Add-In für IIS verwenden, oder gibt es eine einfache Möglichkeit, IIS anzuweisen, alle Anforderungen an einen anderen Server weiterzugeben?


77
2017-07-29 13:14


Ursprung




Antworten:


Für IIS 7.5 bietet Microsoft dafür offizielle Module an!

In den Site-Einstellungen erhalten Sie ein "URL Rewrite" -Symbol.

  • Öffne es
  • Rechtsklick auf die "Inbound Rules List"
  • Wählen Sie "Regeln hinzufügen"
  • Wählen Sie "Reverse Proxy"

In diesem Dialog können Sie den Hostnamen + Port eingeben, an den weitergeleitet werden soll. Nach dem Hinzufügen der Regel bietet das Öffnen des Bearbeitungsdialogs weitere Anpassungen.


79
2018-06-18 07:59



Das ist nett und alles, aber die ursprüngliche Frage spezifiziert IIS 6, so dass ich verwirrt bin, dass eine spezifische Antwort auf IIS 7.5 als "akzeptiert" markiert wurde. Gab es eine Lösung für IIS 6? - Tim Long
@Tim: Sie können die unten beschriebene ISAPI-Umschreibung verwenden, aber ansonsten bin ich mit IIS6-Lösungen nicht vertraut. - vdboor
Ich habe Probleme mit meinem Win10-Computer und kann das nicht installieren. Gibt es Einschränkungen für diese Module? Ist es notwendig, es auf einem Server-Betriebssystem von MS auszuführen? Vielen Dank - fpdragon
Beachten Sie, dass es Probleme gibt, POST-Anfragen mit dieser Methode in umgekehrter Reihenfolge auszuführen - Casper Leon Nielsen
@CasperLeonNielsen Könnten Sie uns bitte auf weitere Details zu den möglichen POST-Problemen hinweisen? - Jens Ehrich


Ich verwende zu diesem Zweck eine Software von Drittanbietern für Windows (IIS), die - neben anderen Dingen wie dem URL-Rewriting - diesen Job ziemlich gut erledigt: ISAPI neu schreiben.

ISAPI Rewrite ist eine leistungsstarke URL   Manipulations-Engine basierend auf regulären   Ausdrücke. Es verhält sich meistens wie   Apache mod_Rewrite, aber ist so konzipiert   speziell für das Internet von Microsoft   Informationsserver (IIS).   ISAPI Rewrite ist ein ISAPI-Filter   geschrieben in reinem C / C ++ so ist es   extrem schnell. ISAPI_Rewrite gibt   Sie die Freiheit, über das hinauszugehen   Standard-URL-Schemata und entwickeln Sie Ihre   eigenes Schema.

Suche nach "Proxying". Hier ist der Dokumentation für die RewriteProxy-Regel.

Es gibt auch ein sehr ähnliches Open-Source-Projekt: Ionics Isapi Rewrite Filter.


17
2017-07-29 13:36



Link zum doc für IIRF ProxyPass: cheeso.members.winisp.net/Iirf20Help/html/... - Cheeso
+1 - Dies funktioniert gut auf IIS 6. - Evan Anderson
Ich konnte IIRF unter Windows 2008 R2 SP1 aufgrund dieses Problems nicht verwenden: iirf.codeplex.com/workitem/32479 - Peter K.


Nein, nicht auf IIS 6. Betrachten Sie die Verwendung von nginx / ubuntu (oder sogar nginx auf Windows) als Reverse-Proxy vor Ihrem IIS6-Server. Wir mussten IIS7.5 für Reverse-Proxy-Funktionen verwenden


0
2018-02-26 07:49





Diese Microsoft KB-Artikel sollte helfen, diese Anfrage zu beantworten.

Verfahren zum Umleiten von Anforderungen an eine andere Website oder ein anderes Verzeichnis:

  1. Erweitern Sie im IIS-Manager den lokalen Computer, klicken Sie mit der rechten Maustaste auf die Website oder das Verzeichnis, das Sie umleiten möchten, und klicken Sie auf Eigenschaften.

  2. Klicken Sie auf das Register Home-Verzeichnis, Virtuelles Verzeichnis oder Verzeichnis.

  3. Klicken Sie unter Der Inhalt, für den diese Quelle stammen soll, auf Eine Umleitung zu einer URL.

  4. Geben Sie in das Feld Umleiten zu die URL des Zielverzeichnisses oder der Website ein.


-3
2017-07-29 13:21



Angesichts des "Reverse-Proxy" -Tags auf der Frage des Posters vermute ich, dass er nach Reverse-Proxy-Funktionalität und nicht nach einer HTTP-Weiterleitung sucht. - Evan Anderson
Der andere Server ist nicht öffentlich verfügbar, also würde das leider nicht funktionieren - Daniel O
Das ist einfach falsch. - tacos_tacos_tacos