IIS ve URL Yeniden Yazma Modülü Nedir?
İIS, web sitelerinizi barındıran güçlü bir web sunucusudur. Bu sunucu, birçok farklı yapılandırma ile çalışabilir. Bu yapılandırmalardan bir tanesi de URL yeniden yazma modülüdür. URL yeniden yazma modülü, gelen URL isteklerini değiştirmemizi sağlar. Örneğin, kullanıcılar eski bir URL’ye gittiğinde, onları yeni bir sayfaya yönlendirmek ya da URL’yi daha SEO dostu hale getirmek için yeniden yazma kuralları ekleyebilirsiniz.
1. URL Yeniden Yazma Modülü Yüklenmemiş
İlk önce, IIS üzerinde URL yeniden yazma modülünün yüklü olup olmadığını kontrol etmeniz gerekir. Eğer modül yüklenmemişse, yazma kuralları çalışmaz.
URL yeniden yazma modülünü yüklemek için aşağıdaki adımları izleyin:
1. IIS yönetim panelini açın.
2. "Yönetici Araçları" sekmesine tıklayın ve ardından "Web Platformu Yöneticisi"ni açın.
3. Arama kısmına "URL Rewrite" yazın.
4. Modülü yükleyin ve IIS’i yeniden başlatın.
Modül kurulumunun ardından, yeniden yazma kurallarını eklemeye başlayabilirsiniz.
2. Yanlış Yazım Kuralları
Bazı zamanlarda, yazdığınız kurallar hatalı olabilir. Yazdığınız kuralın doğru şekilde çalışıp çalışmadığını kontrol etmek için doğru sözdizimini kullanmak çok önemlidir. IIS, bir yazım hatasında URL’yi yeniden yönlendirme işlemini gerçekleştirmez.
Aşağıdaki örnekte doğru yazımın nasıl olması gerektiğini görebilirsiniz:
Bu kuralda, "oldpage.html" URL’si ziyaret edildiğinde, otomatik olarak "/newpage.html" sayfasına yönlendirilir.
3. Kuralları Doğru Dizinle Eşleştirmemek
Bazen URL yeniden yazma kurallarınız, yanlış bir dizinde uygulanır. Eğer doğru dizin seçilmemişse, kuralların uygulanması beklenen şekilde gerçekleşmez.
İIS yönetim panelinde, kuralları doğru bir şekilde belirlemek için "Site Yapılandırması" kısmına gidin. Hedeflediğiniz dizine bağlı kurallarınızı doğrulayın. Eğer kuralınız tüm siteye uygulanacaksa, doğru siteyi seçtiğinizden emin olun.
4. Yönlendirmelerde Sonsuz Döngüler
Birçok kullanıcı, yazma kurallarını yapılandırırken, kendilerini sonsuz döngüde bulabilirler. Bu durum, bir URL’nin sürekli olarak kendisine yönlendirilmesiyle oluşur.
Sonsuz döngülerden kaçınmak için, URL yeniden yazma modülüne eklediğiniz kuralların koşullarını doğru bir şekilde belirlemeniz önemlidir. Örneğin, URL'yi yeniden yazma işleminde, belirli bir URL'yi yeniden yazmadan önce, URL'nin zaten yeniden yazılmadığından emin olmalısınız.
Örnek olarak, aşağıdaki kural bir sonsuz döngüye yol açabilir:
Yukarıdaki kuralda, "page.html" sayfasına yapılan tüm talepler yeniden aynı sayfaya yönlendirilir, bu da sonsuz döngüye yol açar. Bu tür durumları engellemek için doğru yönlendirme koşulları belirlemelisiniz.
5. HTTP ve HTTPS Ayrımı
Bazen HTTP ve HTTPS ayrımına dikkat edilmediği için yönlendirme işlemi doğru bir şekilde gerçekleşmez. Eğer bir sayfa HTTP üzerinden geliyorsa, ancak HTTPS’ye yönlendirme yapmak istiyorsanız, bu durum bazen hatalarla karşılaşmanıza neden olabilir.
Yönlendirme kurallarında, HTTP ile HTTPS arasında geçiş yapılırken URL’nin doğru protokolü kullandığından emin olun. Bu durumda aşağıdaki kural kullanılabilir:
Bu kural, HTTP üzerinden gelen tüm istekleri HTTPS'ye yönlendirecektir.