这是我的standalone-full.xml配置,其中配置了ssl
安全领域。
<security-realm name="SslRealm">
<server-identities>
<ssl>
<keystore path="D:\ncm.keystore" alias="ncm" keystore-password="*****" />
</ssl>
</server-identities>
</security-realm>
子系统
<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 name="http" port="${jboss.http.port:8080}"/>
<socket-binding name="https" port="${jboss.https.port:8443}"/>
如何在用户点击http://localhost:8080/myApp时重定向到https:///localhost:8443/myApp
3条答案
按热度按时间mbzjlibv1#
重写规则可用于重定向用户。在undertow子系统(standalone.xml或domain.xml)中,您需要创建新的重写过滤器,然后在新的fitler-ref中启用该过滤器:
在筛选器节中创建新的重写筛选器。在下面的示例中,用户将被重定向到
https://myhostname:443/my-app
。%U是原始请求URL路径的占位符;您想要使用%U使重定向友好并保留用户的原始请求URL路径。然后,启用过滤器并在主机部分中配置 predicate 。 predicate 是配置重写过滤器应用于的对象的位置。在下面的示例中,我们的重写过滤器将仅应用于发往端口8080的请求。
以下是执行上述相同配置更改的JBoss CLI步骤:
unhi4e5o2#
截至WildFly 15:管理控制台-〉Web -〉筛选器-〉添加重写规则
https://%v%U
然后将其添加到所需的每个主机,条件为
equals(%p,80)
。不需要为每个主机创建规则。
https://leponceau.org/programming/2019-02-06-configuring-wildfly-to-redirect-https-to-http.html
wgeznvg73#
我试过了
正如你所看到的没有
%U
它将所有HTTP通信重定向到HTTPS