Pekerja layanan JS dan API penyimpanan cache dengan http 302 - bagaimana cara melakukan cache pengalihan?

Saya memiliki halaman web, yang diserver melalui https dari Tomcat, dengan pekerja layanan sesuai dengan contoh untuk mengambil sumber daya dan menyimpannya di cache. Jika Tomcat tidak berjalan, halaman disajikan dari penyimpanan cache - sejauh ini baik-baik saja.
Konfigurasi Tomcat saya berisi atribut redirectPort untuk mengalihkan http ke https. Masalah yang saya alami: Ketika Tomcat tidak berjalan dan halaman web saya diakses melalui http, browser menunjukkan: Koneksi ditolak karena pengalihan http 302 tidak disimpan dalam cache. Bagaimana saya bisa mencapainya?


person Michael Enke    schedule 13.04.2021    source sumber


Jawaban (1)


Sayangnya pekerja layanan memerlukan https untuk keamanan, sehingga Anda tidak dapat meminta pekerja layanan mencegat permintaan http.

Jika Anda ingin memaksa browser untuk mengunjungi halaman Anda di https, Anda dapat mengaktifkan HSTS:

https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Strict-Transport-Security

Daftar HSTS dapat dimuat sebelumnya di browser sehingga memungkinkannya bekerja secara offline. Namun perlu diingat, Anda harus berhati-hati saat mengaktifkan HSTS karena jika Anda melakukan kesalahan akan sulit untuk memperbaikinya.

Alternatifnya, browser secara perlahan beralih ke memuat https secara default kecuali pengguna mengetik http secara eksplisit. Misalnya:

https://blog.chromium.org/2021/03/a-safer-default-for-navigation-https.html

person Ben Kelly    schedule 26.04.2021
comment
Poin bagus dengan HSTS, terima kasih. Saya lupa bahwa pekerja layanan memerlukan https (kecuali 127.0.0.1/localhost). - person Michael Enke; 01.05.2021