Windows Server ve IIS ile URL yönlendirme

Bir web sitesini başka siteye yönlendirme, bir sayfayı başka birine yönlendirme, bir klasörü bir başka klasöre yönlendirme internetin zorunluluklarından biridir.

Windows Server’larda sayfa yönlendirmesi yapmak aslında çok kolay. Linux serverlarda Apache ile .htaccess yönlendirme yapmak mümkün iken windows serverlarda genelde .htaccess ile yönlendirme yapmak büyük sorundur.

Oysa IIS (internet information services) de tıpkı apache kodları ile aynı olan kodlama ile URL yönlendirme yapılabilir. Yani nasıl apache kodları kullanarak .htaccess ile yönlendirme yaparken kullandığınız kodlar ve parametreler IIS’te de kullanılarak redirection yapılabilir.

IIS ile Klasör veya Dosya Yönlendirme nasıl yapılır?

1- Windows servera administrator olarak giriş yapın,

2-  Start (başlat)>Settings (ayarlar)>Control panel (kontol paneli)’ne girin,

3-  Kontrol panelinde > Administrative tools (Yönetimsel araçlar)  kısmından Internet Services manager kısmına girin. 

4- Burada yönlendirmek istediğiniz web sitesi veya klasöre farenizin sağ tuşu ile tıklayarak Properties (özellikler) seçeneğini seçin,

5-  Properties’de A redirection to a URL  (bir URL’ye yönlendirme) seçeneğini tıklayın

6- Aşağıdaki kutucuğa (redirect to) nereye yönlendirmek istiyorsanız o yolu aşağıdaki parametrelere de bakarak yazın.

7- A permanent redirection for this resource seçeneğini işaretleyin.

8- Kaydedin,  URL yönlendirme hazır…

 9- Diğer klasör veya dosyalar için aynı uygulamayı yapabilir, scriptleri bile yönlendirebilirsiniz.

 

PARAMETRELER :

Değişken Açıklama Kullanım alanı
$S URL adresinden son elementi alır . Eğer /script , /yeniscript klasörüne yönlendirilecekse bu parametre ile
/script/program.asp, /yeniscript/program.asp olarak çalışır 
$P Orijinal URL’deki değişkeni alır. Orijinal URL /scripts/myscript.asp?number=1,
değişken “number=1” için kullanılır. 
$Q $P gibidir ancak içinde ? işareti kullanılır   Orijinal URL /scripts/myscript.asp?number=1,
değişken; “?number=1″ için kullanılır. 
$V Server adsız kullanım için. Orjinal URL //myserver/scripts/myscript.asp,
değişken “/scripts/myscript.asp” için.
$0 
dan
$9
Yönlendirilecek url nin karekter sayısına göre yönlenmesi için.  
! (ünlem işareti) Yönlendirme yapma. Bir dizindeki (directory) bir alt klasörü veya dosyayı, yönlendirmeden ayrışık tutmak için kullanılır.

IIS YÖNLENDİRMEDE DEĞİŞKENLER :

  • Yıldız işareti (*) : * herhangi bir karekteri ifade eder
  • Soru işareti (?) :  ? tek bir karekteri ifade eder.
  • Noktalı virgül (;) :  ; işareti redirect to kutusuna birden fazla kural yazmak için kullanılır.

IIS YÖNLENDİRME ÖRNEKLERİ :

A-  Uzantısı .html olan tüm dosyaları, default.html ye yönlendirme örneği

1- Yazımızın başındaki gibi Internet Services manager’a girin.

2- Yönlendirilecek Klasöre sağ tık ile Properties kısmına girin

3- Directory sekmesine tıklayın

4- A redirection to a URL’yi seçin

5- Redirect to kutusuna şunu yazın:    *.html;default.html

6- OK tuşuna basarak değişiklikleri kaydedin.

Burada * işareti dosya adı ne olursa olsun .html uzantılı dosyaları, default.html ye yönlendirmek için kullanıldı.

B- Yeni scripte yönlendirme örneği :

eskiscript.asp?sayi=1 kodlamasını yeniscript.asp?sayi=1   e yönlendirme…

1- Yazımızın başındaki gibi Internet Services manager’a girin.

2- eskiscript.asp dosyasına sağ tık ile Properties kısmına girin

3- Directory sekmesine tıklayın

4- A redirection to a URL’yi seçin

5- Redirect to kutusuna şunu yazın:  yeniscript.asp$Q

6- OK tuşu ile değişiklikleri kaydedin.

Bu örnekte $Q  parametresi ile uzantısı ne olursa olsun, eskiscript.asp dosyası ile çağırılan tüm veriler, yeniscript.asp ile çağırılıcaktır.

Örnek:  /forum/showthread.php?t=100   /yeniforum/showthread?t=100 0larak çağırılır (yönlendirilir).

Buna 301 permanent yönlendirmesi denilmektedir ki arama motorları açısından en güvenilir yönlendirmedir.

Not: Bu yazı Windows 2003, Windows 2003r2 ve windows 2008 server ve aşağıdaki yazılımlarda geçerlidir:

  • Microsoft Windows 2000 Server
  • Microsoft Windows 2000 Advanced Server
  • Microsoft Windows 2000 Professional Edition
  • Microsoft Small Business Server 2000 Standard Edition
  • Microsoft Internet Information Services 5.0
  • Bir cevap yazın