Hvad er indstillingen redirectPort i Tomcat's server.xml?


Udgivelsesdato:2. januar 2021.



INFOMARTION > Hvad er indstillingen redirectPort i Tomcat's server.xml?

Oversigt.

Da jeg kiggede på port-indstillingen i Tomcats server.xml-konfiguration, var der en indstilling kaldet 'redirectPort', men jeg kunne ikke finde ud af, hvad denne indstilling var, da jeg googlede det, så jeg slog det op.

Følgende indstillinger.

server.xml


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

Indholdsfortegnelse

  1. Hvad er redirectPort?
  2. resumé

1. Hvad er redirectPort?

Det viser sig, at det er en indstilling, der omdirigerer dig, når du åbner en side, der angiver, at SSL er påkrævet.

Hvis værdierne i server.xml-konfigurationen var

server.xml


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

Hvis URL'en "http://hoge:8080/hoge.html" tilgås, ser det ud til, at brugeren omdirigeres til URL'en "https://hoge:8443/hoge.html".

Det faktum, at SSL er obligatorisk, skal defineres i "web.xml".(「<transport-guarantee>CONFIDENTIAL</transport-guarantee>」)Når den er oprettet, er SSL obligatorisk. Medtag følgende oplysninger i web.xml.

web.xml


~forkortelse~
    <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>

Da url-mønsteret er "/", gør denne indstilling alle URL'er SSL-krævede og omdirigerer. Hvis SSL ikke er angivet som obligatorisk, er det en konfigurationsværdi, som ikke bruges. Selv om "redirectPort="8443" er indstillet i standardværdien for Tomcat, synes selve indstillingen til at aktivere 8443-porten at være ugyldig med standardværdien for Tomcat, så der kan være mange mennesker, for hvem "redirectPort="8443" er indstillet uden at være klar over det, men Jeg tror, at der er mange mennesker, for hvem 8443-porten for redirect-destinationen ikke er aktiveret.

1-1. grundlag

Vi vil gerne beskrive grundlaget for ovenstående konklusioner. På Tomcat-siden står der følgende.

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.」

Pointen er "at få adgang til en side med sikkerhedsbegrænsninger, der angiver, at SSL er påkrævet, som krævet i servlet-specifikationen". Dette er den web.xml-indstilling, som du lige har konfigureret. Pointen er, at SSL-kravet er en servlet-specifikation, og det ser ud til at blive omdirigeret, når det anvendes.

2. resumé

Dette afsnit beskriver indstillingerne for redirectPort i Tomcat's server.xml. Se venligst dette, når du opretter redirectPort.

Tak, fordi du kiggede med til slutningen.




■INFORMATION

Klik her for at gå til den øverste side med oplysninger.


■PROFILE

Klik her for at se en profil.


■Kontaktoplysninger.

For forespørgsler om artiklen kan du kontakte os her.