Windows sunucularında, birçok hosting kontrol paneli gelen istekleri otomatik olarak https’e yönlendirir, ancak bazı hosting kontrol panelleri ve panelsiz IIS kullanımlarında bu yönlendirme desteklenmeyebilir. Bu durumda, web.config dosyanızı veya IIS Üzerinden HTTPS Yönlendirmesi yapmanız gerekebilir. Bu yazıda, yönlendirme işlemini adım adım inceleyeceğiz.
IIS Üzerinden HTTPS Yönlendirmesi
1 – Öncelikle Windows Sunucumuza Ait IIS arayüzüne bağlanıyoruz.
2 – Sol menüde “Sites” altından web sitemizi buluyoruz ve “URL Rewrite” butonuna tıklıyoruz.
3 – Sağ menüde yer alan “Add Rule(s)” butonuna tıklıyoruz.
4 – Açılan Pencere üzerinde “Blank Rule” butonuna tıklıyoruz.
5 – Açılan pencerede name bölümüne istediğiniz gibi doldurabilirsiniz. Pattern bölümüne (.*) yazıyoruz.
6 – Condition bölümüne geliyoruz ve Add butonuna basıyoruz. Açılan pencerede Condition input bölümüne {HTTPS} ve Pattern bölümüne ^OFF$ yazarak ok butonuna basıyoruz.
7 – Son olarak Action bölümüne geliyoruz ve Action Type olarak Redirect seçiyoruz, Redirect URL bölümüne https://{HTTP_HOST}/{R:1} yazıyoruz ve Redirect type olarak 303 seçiyoruz.
8 – İşlemler tamamlandı. İşlemleri kaydetmek için sağ menüden Apply butonuna basıyoruz.
Web.Config Üzerinde HTTPS Yönlendirme
Aşağıdaki kod satırını web.config üzerinde configuration kodları arasına yerleştirerek yönlendirebilirsiniz. Eğer sunucu veya hosting paketi içerisinde Web.config dosyası bulunmuyorsa web.config adında bir dosya oluşturarak aşağıdaki kod satırını ekleyebilirsiniz.
<configuration>
<system.webServer>
<rewrite>
<rules>
<rule name="HTTPyi HTTPSye Yonlendirme" stopProcessing="true">
<match url="(.*)" />
<conditions>
<add input="{HTTPS}" pattern="off" ignoreCase="true" />
</conditions>
<action type="Redirect" redirectType="Permanent" url="https://{HTTP_HOST}/{R:1}" />
</rule>
</rules>
</rewrite>
</system.webServer>
</configuration>