webentwicklung-frage-antwort-db.com.de

Umleiten von http-Anforderungen an https in wildfly 10

Dies ist meine Standalone-full.xml-Konfiguration mit konfiguriertem SSL
Sicherheitsbereich.

      <security-realm name="SslRealm">
            <server-identities>
            <ssl>
            <keystore path="D:\ncm.keystore" alias="ncm" keystore-password="*****" />
            </ssl>
            </server-identities>
        </security-realm>

Subsystem

 <server name="default-server">
            <http-listener name="default" socket-binding="http" redirect-socket="https"/>
            <https-listener name="default-ssl" socket-binding="https" security-realm="SslRealm"/>
            <Host name="default-Host" alias="localhost">
                <location name="/" handler="welcome-content"/>
                <filter-ref name="server-header"/>
                <filter-ref name="x-powered-by-header"/>
            </Host>
        </server>

Sockelbindung

   <socket-binding name="http" port="${jboss.http.port:8080}"/>
    <socket-binding name="https" port="${jboss.https.port:8443}"/>

So leiten Sie zu https: /// localhost: 8443/myApp um, wenn der Benutzer auf http: // localhost: 8080/myApp trifft

6
Faiyaz Md Abdul

Eine Umschreibungsregel kann verwendet werden, um Benutzer umzuleiten. Im Subsystem Subow (standalone.xml oder domain.xml) müssen Sie einen neuen Überschreibfilter erstellen und dann den Filter in einem neuen Fitler-ref aktivieren:

Erstellen Sie im Filterbereich den neuen Überschreibfilter. Im folgenden Beispiel werden Benutzer zu https://myhostname:443/my-app umgeleitet. % U ist ein Platzhalter für den ursprünglichen URL-Pfad der Anfrage. Sie möchten% U verwenden, um die Weiterleitung benutzerfreundlich zu gestalten und den ursprünglichen URL-Pfad der Benutzer beizubehalten.

<filters>
<rewrite name="http-to-https" redirect="true" target="https://myhostname:8443%U"/>
</filters>

Aktivieren Sie anschließend den Filter und konfigurieren Sie ein Vergleichselement im Abschnitt "Host". Mit dem Prädikat konfigurieren Sie, wofür der Umschreibefilter gilt. In dem folgenden Beispiel gilt unser Filter zum Überschreiben nur für Anforderungen, die an Port 8080 gesendet werden.

    <server name="default-server">
        <Host name="default-Host" alias="localhost">
            ...
            <filter-ref name="http-to-https" predicate="equals(%p,8080)"/>

Hier sind die JBoss-CLI-Schritte für die gleichen Konfigurationsänderungen wie oben:

/subsystem=undertow/configuration=filter/rewrite=http-to-https:add(redirect="true",target="https://myhostname:8443%U")
/subsystem=undertow/server=default-server/Host=default-Host/filter-ref=http-to-https:add(predicate="equals(%p,8080)")
16
Varsha

Ab WildFly 15: Verwaltungskonsole -> Web -> Filter -> Umschreibregel hinzufügen https://%v%U

Fügen Sie es dann mit der Bedingung equals(%p,80) zu jedem gewünschten Host hinzu.

Es muss keine Regel für jeden Host erstellt werden.

https://javagc.leponceau.org/2019/02/configuring-wildfly-to-redirect-https.html

0
user1050755

Ich habe es versucht 

<rewrite name="http-to-https" redirect="true" target="https://my.website.com:443/Web/"/>

Wie Sie ohne %U sehen können

Es leitet den gesamten HTTP-Datenverkehr an HTTPS weiter

0
Laefiss