
Ich richte eine Tomcat-App ein, die läuft aufhttps://localhost:9443/unter Windows 2008 R2 und ich möchte es hinter einem Reverse-Proxy platzieren. Ich habe das Advanced Request Routing 2-Paket von Microsoft installiert und auf dem Hauptserverknoten sehe ich eine neue Option namens „Advanced Request Routing Cache“. Nach all den Tutorials, die ich gesehen habe, sollte ich in der Lage sein:
- Öffnen Sie den Advanced Request Routing Cache
- Klicken Sie auf „Server-Proxy-Einstellungen“.
- Aktivieren Sie „Proxy aktivieren“.
- Fügen Sie eine URL-Umschreibregel mit der URL hinzu, die auf meine Tomcat-App verweist
Ich habe versucht, die URL-Umschreibregel sowohl auf Serverknotenebene als auch auf Siteebene festzulegen, aber jedes Mal, wenn ich versuche, auf die Reverse-Proxy-URL zuzugreifen, erhalte ich nur eine 404-Fehlermeldung.
Ich habe gesehen, dass es eine zusätzliche Option namens „URL-Rewrite verwenden, um eingehende Anfragen zu prüfen“ gibt, aber wenn ich dieses Kontrollkästchen aktiviere, muss ein Proxyserver eingegeben werden. Unabhängig davon, was ich eingebe, antwortet der Server dann auf alle Anfragen mit 502, nicht nur auf die, die ich per Proxy übertragen lassen wollte.
Übersehe ich hier etwas oder funktioniert dies zwischen IIS 7.0 (für das alle Tutorials geschrieben zu sein scheinen) und 7.5 nicht gleich?
Antwort1
Befindet sich „localhost“ auf demselben Server? D. h. ist Tomcat auf Port 9443, während ARR auf Port 80 auf demselben Server ist?
Dies sind die wichtigsten Dinge, die Sie einrichten müssen:
- Erstellen Sie eine Serverfarm. Wenn sie sich auf derselben Box befindet, fügen Sie einen einzelnen Knoten hinzu, der auf „localhost“ verweist.
- Wenn Sie „Ja“ sagen, um die URL-Umschreibregeln zu erstellen, wird der gesamte Datenverkehr erfasst und an diese Serverfarm weitergeleitet. Wenn das in Ordnung ist, sagen Sie „Ja“.
- Wenn Sie die URL-Rewrite-Regel im vorherigen Schritt nicht erstellt haben, gehen Sie zur obersten Ebene von IIS, gehen Sie zu URL Rewrite und erstellen Sie eine neue Regel. Verwenden Sie {HTTP_HOST} für den Domänennamen oder {SERVER_ADDR} für die IP-Bindung. Legen Sie die Aktion so fest, dass die Serverfarm verwendet wird, die Sie im ersten Schritt oben eingerichtet haben.
- Die Standardwebsite sollte den gesamten Datenverkehr abfangen, der wiederum von der URL-Umschreibregel auf globaler Ebene abgefangen wird.