복붙노트

[SPRING] wildfly 10의 HTTP 요청을 https로 리디렉션합니다.

SPRING

wildfly 10의 HTTP 요청을 https로 리디렉션합니다.

이것은 ssl이 구성된 독립형 -full.xml 구성입니다. 보안 영역.

      <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로 리디렉션하는 방법

해결법

  1. ==============================

    1.다시 쓰기 규칙은 사용자를 리디렉션하는 데 사용할 수 있습니다. undertow 하위 시스템 (standalone.xml 또는 domain.xml)에서 새 다시 쓰기 필터를 만든 다음 새 fitler-ref에서 필터를 활성화해야합니다.

    다시 쓰기 규칙은 사용자를 리디렉션하는 데 사용할 수 있습니다. undertow 하위 시스템 (standalone.xml 또는 domain.xml)에서 새 다시 쓰기 필터를 만든 다음 새 fitler-ref에서 필터를 활성화해야합니다.

    필터 섹션에 새 다시 쓰기 필터를 만듭니다. 아래 예에서 사용자는 https : // myhostname : 443 / my-app으로 리디렉션됩니다. % U는 원래 요청 URL 경로의 자리 표시 자입니다. % U를 사용하여 리디렉션을 우호적으로 만들고 사용자의 원래 요청 URL 경로를 유지하려고합니다.

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

    그런 다음 필터를 사용 가능하게하고 호스트 섹션에서 술어를 구성하십시오. 술어는 다시 쓰기 필터가 적용되는 대상을 구성하는 곳입니다. 아래 예에서 우리의 재 작성 필터는 8080 포트로 전송되는 요청에만 적용됩니다.

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

    다음은 위의 동일한 구성 변경 사항에 대한 JBoss CLI 단계입니다.

    /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)")
    
  2. ==============================

    2.나는 노력했다.

    나는 노력했다.

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

    % U없이 볼 수 있듯이

    모든 HTTP 트래픽을 HTTPS로 리디렉션합니다.

  3. ==============================

    3.WildFly 15부터 : 관리 콘솔 -> 웹 -> 필터 -> 다시 쓰기 규칙 추가 https : // % v % U

    WildFly 15부터 : 관리 콘솔 -> 웹 -> 필터 -> 다시 쓰기 규칙 추가 https : // % v % U

    그런 다음 조건 같음 (% p, 80)을 사용하여 원하는 모든 호스트에 추가하십시오.

    모든 호스트에 대해 규칙을 작성할 필요가 없습니다.

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

  4. from https://stackoverflow.com/questions/43752067/redirect-http-requests-to-https-in-wildfly-10 by cc-by-sa and MIT license