Ceci est ma configuration standalone-full.xml avec ssl configuré
domaine de sécurité.
<security-realm name="SslRealm">
<server-identities>
<ssl>
<keystore path="D:\ncm.keystore" alias="ncm" keystore-password="*****" />
</ssl>
</server-identities>
</security-realm>
Sous-système
<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>
Socket Binding
<socket-binding name="http" port="${jboss.http.port:8080}"/>
<socket-binding name="https" port="${jboss.https.port:8443}"/>
Comment rediriger vers https: /// localhost: 8443/myApp lorsque l'utilisateur clique sur http: // localhost: 8080/myApp
Une règle de réécriture peut être utilisée pour rediriger les utilisateurs. Dans le sous-système de ressacs (standalone.xml ou domain.xml), vous devrez créer un nouveau filtre de réécriture, puis l'activer dans un nouveau fitler-ref:
Créez le nouveau filtre de réécriture dans la section des filtres. Dans l'exemple ci-dessous, les utilisateurs seront redirigés vers https://myhostname:443/my-app
. % U est un espace réservé pour le chemin de l'URL de la requête d'origine; vous souhaitez utiliser% U pour rendre la redirection conviviale et conserver le chemin d’URL de requête original des utilisateurs.
<filters>
<rewrite name="http-to-https" redirect="true" target="https://myhostname:8443%U"/>
</filters>
Activez ensuite le filtre et configurez un prédicat dans la section Host. Le prédicat est l'endroit où vous configurez le filtre de réécriture. Dans l'exemple ci-dessous, notre filtre de réécriture s'appliquera uniquement aux demandes allant au port 8080.
<server name="default-server">
<Host name="default-Host" alias="localhost">
...
<filter-ref name="http-to-https" predicate="equals(%p,8080)"/>
Voici les étapes de la CLI de JBoss pour les mêmes modifications de configuration ci-dessus:
/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)")
À partir de WildFly 15: console d’administration -> Web -> Filtres -> Ajouter une règle de réécriture https://%v%U
Ajoutez-le ensuite à chaque hôte de votre choix avec la condition equals(%p,80)
.
Pas besoin de créer une règle pour chaque hôte.
https://javagc.leponceau.org/2019/02/configuring-wildfly-to-redirect-https.html
J'ai essayé
<rewrite name="http-to-https" redirect="true" target="https://my.website.com:443/Web/"/>
Comme vous pouvez le voir sans %U
Il redirige tout le trafic HTTP vers HTTPS