Devam Et
Logo

IIS'de HTTP'yi HTTPS'ye Yönlendirme

Eğer web siteniz windows tabanlı bir sunucuda barınıyorsa, web sitenizin güvenli siteye yani HTTPS versiyona yönlendirilmesi, Linux tabanlı sunuculara göre farklılık gösterecektir. Bildiğiniz gibi Linux tabancı sunucularda bir .htaccess dosyası ve bir kaç satırlık kod yardımıyla bu yönlendirmeyi basit bir şekilde yapabiliyorsunuz. Windows tabancı sunucularda iş biraz farklılaşıyor. Ama zorlaşmıyor.

Windows tabanlı sunucularda, sunucu üzerinde yayına açılan web sitelerinin yönetimsel işlemleri IIS (Internet Information Server) üzerinden yapılır. Bu servis üzerinden web sitelerinizin yayınlanması, Linux tabanlı sunucularda .htaccess dosyası yardımıyla yapılan URL yönlendirme işlemleri vb. bir çok işlemi yapabilirsiniz.

Hadi lafı fazla uzatmadan nasıl yapıldığına bakalım. 

  1. Öncelikle sunucunuzdaki IIS servisinde URL Rewrite modülü yüklümü diye kontrol edelim. Eğer yüklü değil buradan indirip kurabilirsiniz. 
  2. Üstteki resimde görüldüğü gibi URL Rewrite yazan ikona tıklayın.
  3. Açılan pencerenin sağ menüsünden Add Rule(s) linkine tıklayın.
  4. Blank Rule seçeneğini seçip OK butonuna tıklayın.
  5. Rule Name kısmına istediğiniz gibi bir isim verin
  6. Match URL pencereciğinde; 
    • Requested URL menüsünden Matches the Pattern seçeneğini seçin,
    • Using menüsünden Regular Expressions seçeneğini seçin,
    • Pattern kısmına (.*) karakterlerini girin (parantezler dahil)
    • Ignore Case kutucuğunu seçin ve devam edin
  7. Conditions pencereciğinde Logical grouping menüsünden Match All seçeneğini seçin ve ardından Add butonuna tıklayın
  8. Açılan küçük pencerede;
    • Condition Input alanına {HTTPS} yazın
    • Check if input string menüsünden Matches the Pattern seçeneğini seçin
    • Pattern alanına ^OFF$ yazın ve OK butonuna tıklayın
  9.  Action pencereciğinin içinde Action Type menüsünde Redirect seçeneğini seçin ve altında ki Redirect URL kısmına şu stringi yazın; https://{HTTP_HOST}{REQUEST_URI}
  10. Append query string  kutucuğunu işaretleyin
  11. Açılan menüden Permanent (301) seçeneğini seçin
  12. Son olarak sağ taraftaki menüden Apply butonuna tıklayın.

 

Peki bittimi ? HAYIR

İstediğimiz kuralı yani rule'u tanımladık fakat henüz domainimizi HTTPS'ye yönlendirmedik. Onu da şöyle yapıyoruz.

  1. IIS penceresinin sol tarafında ki listeden sitemize sağ tıklayıp Explore linkine gidiyoruz.
  2. Buraya tıklayınca bize sitemizin kök dizini açılacaktır. Bu kök dizinde web.config dosyamızın var olup olmadığını kontrol ediyoruz. 
  3. Varsa dosyayı açıp aşağıdaki kodların dosyada var olup olmadığına bakıyoruz.
    <configuration>
     <system.webServer>
     <rewrite>
     <rules>
     <rule name="HTTPS force" enabled="true" stopProcessing="true">
     <match url="(.*)" />
     <conditions>
     <add input="{HTTPS}" pattern="^OFF$" />
     </conditions>
     <action type="Redirect" url="https://{HTTP_HOST}{REQUEST_URI}" redirectType="Permanent" />
     </rule>
     </rules>
     </rewrite>
     </system.webServer>
    </configuration> 
    Yoksa eğer yeni txt dosyası oluşturup dosyamızın adını web.config olarak değişitiyor ve içerisine bu kodları yazıp kaydediyoruz.

 

Evet işlem biraz uzun ama zor değil. Zaten linux tabanlı sistemlerin güzelliğini de, Windows'un böyle zorluklarını görünce anlıyoruz.  ;)

Author

Muhammed Yusuf TAŞKESENLİGİL

Hakkında: Hakkında: 2015 Haziran ayında KTÜ Bilgisayar Mühendisliği bölümünden mezun oldum. Yaklaşık 4 yıldır web teknolojileri üzerinde çalışıyorum. HTML, CSS, JavaScript ve PHP alanlarında proje geliştiriyorum. Teknolojiyi seven ve hayatının her alanında kullanan biriyim.

Twitter'da Fenomen Olmanın Yolları - 1 Önceki Yazı
iCloud'dan Android'e Rehber Taşıma Sonraki Yazı

0 Yorum

    Henüz hiç yorum eklenmemiş!

Bir Yorumda Sen Bırak