Apa pengaturan redirectPort dalam server.xml Tomcat?


Tanggal Publikasi:2 Januari 2021.



INFOMARTION > Apa pengaturan redirectPort dalam server.xml Tomcat?

Ikhtisar.

Ketika saya melihat pengaturan port dalam konfigurasi server.xml Tomcat, ada pengaturan yang disebut 'redirectPort', tetapi saya tidak tahu apa pengaturan ini ketika saya mencarinya di Google, jadi saya mencarinya.

Pengaturan berikut ini.

server.xml


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

Daftar Isi

  1. Apa itu redirectPort?
  2. ringkasan

1. Apa itu redirectPort?

Ternyata, tampaknya itu adalah pengaturan yang mengarahkan Anda ketika Anda mengakses halaman yang menentukan bahwa SSL diperlukan.

Jika nilai konfigurasi server.xml adalah

server.xml


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

Jika URL "http://hoge:8080/hoge.html" diakses, tampaknya mengarahkan pengguna untuk mengakses URL "https://hoge:8443/hoge.html".

Fakta bahwa SSL adalah wajib harus didefinisikan dalam "web.xml".(「<transport-guarantee>CONFIDENTIAL</transport-guarantee>」)Saat disiapkan, SSL adalah wajib. Sertakan informasi berikut ini dalam web.xml.

web.xml


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

Karena url-pattern adalah "/", pengaturan ini membuat semua URL memerlukan SSL dan pengalihan. Jika SSL tidak ditentukan sebagai wajib, itu adalah nilai konfigurasi yang tidak digunakan. Meskipun "redirectPort="8443" diatur dalam nilai default Tomcat, pengaturan untuk mengaktifkan port 8443 itu sendiri tampaknya tidak valid dengan nilai default Tomcat, jadi mungkin ada banyak orang yang "redirectPort="8443" "diatur tanpa kesadaran tetapi Saya pikir, ada banyak orang yang port 8443 dari tujuan pengalihan tidak diaktifkan.

1-1. dasar

Kami ingin menjelaskan dasar kesimpulan di atas. Halaman Tomcat menyatakan hal berikut.

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

Intinya adalah "mengakses halaman dengan batasan keamanan yang menentukan bahwa SSL diperlukan, seperti yang disyaratkan oleh spesifikasi servlet". Ini adalah pengaturan web.xml yang baru saja Anda konfigurasikan. Intinya adalah bahwa persyaratan SSL adalah spesifikasi servlet, dan tampaknya akan dialihkan ketika diterapkan.

2. ringkasan

Bagian ini menjelaskan pengaturan redirectPort di server.xml Tomcat. Harap merujuk ke ini ketika menyiapkan redirectPort.

Terima kasih telah menonton sampai akhir.