Vad är inställningen redirectPort i Tomcats server.xml?


Datum för offentliggörande:2 januari 2021.



INFOMARTION > Vad är inställningen redirectPort i Tomcats server.xml?

Översikt.

När jag tittade på portinställningen i Tomcats server.xml-konfiguration fanns det en inställning som hette "redirectPort", men jag kunde inte komma på vad den inställningen var när jag googlade, så jag slog upp den.

Följande inställningar.

server.xml


    <Connector port="8080" protocol="HTTP/1.1"
               connectionTimeout="20000"
               redirectPort="8443" />

Innehållsförteckning

  1. Vad är redirectPort?
  2. sammanfattning

1. Vad är redirectPort?

Det verkar vara en inställning som omdirigerar dig när du öppnar en sida som anger att SSL krävs.

Om konfigurationsvärdena i server.xml var

server.xml


    <Connector port="8080" protocol="HTTP/1.1"
               connectionTimeout="20000"
               redirectPort="8443" />

Om URL:n "http://hoge:8080/hoge.html" nås verkar det som om den omdirigerar användaren till URL:n "https://hoge:8443/hoge.html".

Att SSL är obligatoriskt måste definieras i "web.xml".(「<transport-guarantee>CONFIDENTIAL</transport-guarantee>」)SSL är obligatoriskt när det är konfigurerat. Inkludera följande information i web.xml.

web.xml


~förkortning~
    <security-constraint>
      <web-resource-collection>
        <web-resource-name>twx-portal</web-resource-name>
        <url-pattern>/*</url-pattern>
      </web-resource-collection>
      <user-data-constraint>
        <transport-guarantee>CONFIDENTIAL</transport-guarantee>
      </user-data-constraint>
    </security-constraint>

</web-app>

Eftersom url-mönstret är "/" gör den här inställningen att alla URL:er och omdirigeringar kräver SSL. Om SSL inte anges som obligatoriskt är det ett konfigurationsvärde som inte används. Även om "redirectPort="8443" är inställt i standardvärdet för Tomcat, verkar inställningen för att aktivera port 8443 i sig själv vara ogiltig med standardvärdet för Tomcat, så det kan finnas många personer för vilka "redirectPort="8443" är inställt utan att de är medvetna om det. Jag tror att det finns många som inte har aktiverat 8443-porten för omdirigeringsdestinationen.

1-1. grund

Vi skulle vilja beskriva grunden för dessa slutsatser. På Tomcat-sidan står följande.

http://tomcat.apache.org/tomcat-9.0-doc/ssl-howto.html

「If you change the port number here, you should also change the value specified for the redirectPort attribute on the non-SSL connector. This allows Tomcat to automatically redirect users who attempt to access a page with a security constraint specifying that SSL is required, as required by the Servlet Specification.」

Poängen är "åtkomst till en sida med säkerhetsbegränsningar som anger att SSL krävs, i enlighet med servletspecifikationen". Detta är inställningen i web.xml som du just har konfigurerat. Poängen är att SSL-kravet är en servletspecifikation, och den verkar omdirigeras när den tillämpas.

2. sammanfattning

I det här avsnittet beskrivs inställningarna för redirectPort i Tomcats server.xml. Se detta när du ställer in redirectPort.

Tack för att du tittade på till slutet.




■INFORMATION

Klicka här för att komma till den översta sidan med information.


■PROFILE

Klicka här för en profil.


■Kontaktuppgifter.

För frågor om artikeln, vänligen kontakta oss här.