Kami ingin SEMUA situs di server web kami (IIS 10) memberlakukan SSL (yaitu mengalihkan HTTP ke HTTPS).
Kami saat ini 'Membutuhkan SSL' di setiap situs dan menyiapkan 403 error
penangan untuk melakukan 302 redirect
ke alamat https untuk situs tertentu.
Ini sangat bagus. Tapi itu menyakitkan untuk dilakukan untuk setiap situs, ada banyak ruang untuk kesalahan manusia.
Idealnya saya ingin mendirikan sebuah permanen 301 redirect
pada semua HTTP://*
keHTTPS://*
Apakah ada cara sederhana untuk melakukan ini di IIS?
Jawaban:
Modul Penulisan Ulang URL IIS 2.1 untuk IIS7 + mungkin adalah teman Anda. Modul ini dapat diunduh dari IIS URL Rewrite . Menggunakan Modul Penulisan Ulang URL dan Referensi Konfigurasi Modul Penulisan Ulang 2,0 menjelaskan cara menggunakan modul.
Setelah modul diinstal, Anda dapat membuat pengalihan lebar host menggunakan IIS Manager. Pilih URL Penulisan Ulang , Tambah Aturan ... , dan Aturan kosong .
Nama:
Redirect ke HTTPS
URL cocok URL yang
diminta:
Matches the Pattern
Menggunakan:
Wildcards
Pola:
*
Abaikan case: Diperiksa
Kondisi
Pengelompokan logis:
Match Any
Input kondisi :
{HTTPS}
Periksa apakah string input:
Matches the Pattern
Pola:
OFF
Abaikan case: Checked
Track capture groups Lintas kondisi: Tidak dicentang
Variabel Server
Biarkan kosong.
Tindakan
Jenis tindakan:
Redirect
Redirect URL:
https://{HTTP_HOST}{REQUEST_URI}
Menambahkan string kueri: Tidak dicentang
Jenis pengalihan:
Permanent (301)
Terapkan aturan dan jalankan IISReset (atau klik Restart di IIS Manager)
Atau, setelah menginstal modul Anda dapat memodifikasi file applicationHost.config sebagai berikut:
sumber
Penelitian saya menunjukkan bahwa ini mungkin cara yang lebih baik untuk mengarahkan ulang:
sumber