Redirect HTTP ke HTTPs
Untuk redirect HTTP ke HTTPS di IIS, kamu bisa menggunakan HTTP Redirect atau URL Rewrite. Metode terbaik dan paling fleksibel adalah menggunakan URL Rewrite. Berikut ini panduan lengkapnya:
✅ Cara Redirect HTTP ke HTTPS di IIS Menggunakan URL Rewrite
🔧 Langkah 1: Install URL Rewrite Module
-
Buka browser, unduh URL Rewrite dari:
👉 https://www.iis.net/downloads/microsoft/url-rewrite -
Jalankan installer, pastikan IIS sudah terinstal sebelumnya.
🔧 Langkah 2: Buka IIS Manager
-
Buka
IIS Manager
-
Pilih situs yang ingin kamu redirect
-
Buka fitur URL Rewrite
🔧 Langkah 3: Buat Aturan Redirect
-
Klik "Add Rules..."
-
Pilih:
-
Inbound Rules
-
Pilih Blank rule → Klik OK
-
📝 Konfigurasi Aturan Redirect
Isi seperti ini:
-
Name:
Redirect to HTTPS
-
Condition Input:
{HTTPS}
-
Check if input string:
Matches the Pattern
-
Pattern:
^OFF$
-
Klik OK
Di bagian Action:
-
Action type:
Redirect
-
Redirect URL:
https://{HTTP_HOST}/{R:1}
-
Append query string: ✅
-
Redirect type:
Permanent (301)
Klik Apply.
🔄 Hasilnya
Setiap permintaan HTTP seperti:
http://example.com/page
akan otomatis dialihkan ke:
https://example.com/page
🛠 Alternatif: Gunakan web.config
Kalau kamu lebih nyaman mengedit langsung file web.config
, tambahkan ini:
<configuration>
<system.webServer>
<rewrite>
<rules>
<rule name="Redirect to HTTPS" stopProcessing="true">
<match url="(.*)" />
<conditions>
<add input="{HTTPS}" pattern="^OFF$" />
</conditions>
<action type="Redirect" url="https://{HTTP_HOST}/{R:1}" redirectType="Permanent" />
</rule>
</rules>
</rewrite>
</system.webServer>
</configuration>
QUESTION?
saat ini di IIS manager, saya sudah membuat site untuk https://myapp.poltekesos.ac.id dan sudah ok, apakah saya perlu membuat site untuk http nya dan mengkonfigurasi rewritenya di http?
Ya, benar sekali. Agar redirect dari HTTP ke HTTPS bekerja, kamu perlu membuat site untuk HTTP (port 80) juga di IIS, karena:
🚫 IIS tidak akan menangani request ke
http://myapp.poltekesos.ac.id
kalau tidak ada binding untuk HTTP di situs manapun.
✅ Jadi, Langkah-Langkahnya Adalah:
1. Tambahkan Binding HTTP ke Situs yang Sama
Kalau kamu ingin menyederhanakan setup:
-
Buka IIS Manager
-
Klik situs
myapp.poltekesos.ac.id
-
Di kanan, klik Bindings...
-
Klik Add...
-
Type:
http
-
IP address: (All Unassigned) atau IP spesifik
-
Port:
80
-
Hostname:
myapp.poltekesos.ac.id
-
-
Klik OK
➕ Ini akan membuat situs IIS yang sama bisa menangani HTTP dan HTTPS.
2. Pasang URL Rewrite Rule di Situs Ini
Setelah HTTP binding aktif, kamu bisa langsung menambahkan rule redirect HTTP ke HTTPS (seperti langkah sebelumnya).
Atau langsung tempelkan ini ke web.config
situsmu:
<configuration>
<system.webServer>
<rewrite>
<rules>
<rule name="Redirect to HTTPS" stopProcessing="true">
<match url="(.*)" />
<conditions>
<add input="{HTTPS}" pattern="^OFF$" />
</conditions>
<action type="Redirect" url="https://{HTTP_HOST}/{R:1}" redirectType="Permanent" />
</rule>
</rules>
</rewrite>
</system.webServer>
</configuration>
❗ Jangan Buat 2 Situs IIS Terpisah
Tidak disarankan membuat 2 site berbeda untuk http://
dan https://
dengan hostname sama (myapp.poltekesos.ac.id
) karena:
-
Akan terjadi konflik binding
-
Sulit memelihara konfigurasi yang konsisten
Lebih baik gunakan satu site dengan 2 binding: satu untuk HTTP dan satu untuk HTTPS.
Kalau kamu kirim screenshot bindings IIS kamu, saya bisa bantu validasi apakah setup-nya sudah benar.
No Comments