IIS web.config HTTP - HTTPS Force Redirect Sample
IIS web.config HTTP - HTTPS Force Redirect Sample
web.config dosyası web sitesinin ortak konfigürasyon ayarlarının tutulduğu XML tabanlı bir dosyadır.Bu dosya sistenin kök dizininde olabileceği gibi belli dizinler altındada olabilir. Sitenin kök dizininde olduğunda dosyadaki bilgiler tüm siteyi etkiler, eğer bir dizin altına yerleştirmişsek dosyadaki bilgiler sadece o dizin altındaki sayfaları etkileyecektir.
Buna örnek olarak üyelik sayfalarının içinde barındığı bir dizini verebiliriz. web.config dosyasında üyelik sayfalarının içinde bulunduğu dizin için kullanıcı girişi yapılmasını istediğimizde bu dizindeki sayfalara erişebilmek için yine web.config dosyasında belirttiğimiz kullanıcı adı/parola çiftine sahip olan kullanıcılar istenilen sayfalara erişebilmektedir.
İhtiyacınız olan ziyaretçinizi otomatik oalrak http den https protokolüne aktarmak ise, web.config dosyasına ekleyeceğiniz bir rewrite rule ile çözülebilir.
Hemen kodumuza geçelim;
web.config
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<system.webServer>
<rewrite>
<rules>
<rule name="Force HTTPS" enabled="true">
<match url="(.*)" ignoreCase="false" />
<conditions>
<add input="{HTTPS}" pattern="off" />
</conditions>
<action type="Redirect" url="https://{HTTP_HOST}{REQUEST_URI}" appendQueryString="true" redirectType="Permanent" />
</rule>
</rules>
</rewrite>
</system.webServer>
</configuration>