IoT

Mengalihkan semua ke HTTPS kecuali tempat tertentu pada Nginx

Masih dalam petualangan saya memahami Let’s Encrypt. Kasus kali ini websitenya sudah pakai HTTPS pakai sertifikat SSL COMODO, jadi migrasi akhirnya. Tapi verifikasi certbot lewat metode webroot authentication selalu berusaha mengakses port HTTP (80). Dimana semua trafiknya sudah terlanjur diredirect ke HTTPS. Otomatis gagal. 🙁

Jadi server Let’s Encrypt akan berusaha memvalidasi dengan mengakses direktori .well-known pada nama domain anda. Bisa saja kita nonaktifkan redirectnya tapi masa setiap mau renew mau dilakukan setiap 3 bulan? Percuma dong otomatisasi lewat cron. 😀

Jadi solusinya ya semuanya tetap dialihkan ke HTTPS, kecuali satu tempat atau direktori pakai HTTP. Disini saya pakai web server Nginx.

Bagaimana caranya? Tambahkan kode redirect berikut ke dalam konfigurasi virtual hostingnya yang listen pada port 80:

Related Articles
location /.well-known/ {
                root /var/www/nama_domain.com;
        }

Dimana root itu adalah tempat virtual hosting dari situsnya.

Atau alternatifnya pakai try_files:

location /.well-known {
        try_files $uri $uri/ =404;
    }

Jangan lupa, ini contohnya memang dari Let’s Encrypt. Tapi sangat bisa sekali anda modifikasi url mana yang diredirect (location) dan diarahkan kemana (kode dalam blok {}).

Pilih salah satu dan letakkan diatas kode redirect ke HTTPS. Karena akan diproses secara berurutan.

moch akbar fitrianto

Jurnalis Dari Rakyatnesia.com Dan Sudah di dunia jurnalistik selama lebih dari 10 tahun. Tulisan berita Lamongan, umum, prediksi bola , dan profil sudah bukan hal asing lagi, Lugas dengan Fakta.

Related Articles

Back to top button