Artık hepimizin çok iyi bir şekilde bildiği bir durum var ki o da google’ın insanlar tarafından kolayca alşılabilecek yapıdaki URL (web adresleri) kullanılmamızı arzu ettiğidir. SEO (Search Engine Optimizations – Arama Motoru Optimizasyonu) kurallarından en değerlisi bile diyebiliriz. Bir örnek verecek olursak;http://arsiv.pilli.com/bu-bir-deneme-adresidir.html
oysa çoğu sitede karşımıza şu görünümdeki adresler çıkar;http://arsiv.pilli.com/makale.asp?makID=1471
ve doğal olarak google yukarıda verdiğimiz ilk örneği daha çok sevmektedir. Çünkü insanlar sayfamızı daha açmadan, ne ile ilgili olduğunu fark edebilirler.klasik asp ve iis6.0 kullanarak bu işlemi kendi becerimizle yapacağız. Aksi halde iis’in, asp için URL’lere müdehale edebilmemize olanak verdiği özel bir yöntemi bulunmuyor. Kendi tekniklerimizle bizi baş başa bırakmayı daha uygun görmüşler.Bu işi yapabilmenin ana mantığı “404” hatasını işlemekte yatıyor. iis direkt olarak, URL düzenleme desteği sunmuyor demiştik ama oluşması muhtemel hataları yönetebilmemize izin veriyor. Yani web sitesi sahipleri örneğin önceleri kullandığı bir sayfayı sonradan kaldırdığında, kaldırılan sayfaya gelen ziyaretçilerine kendi tasarımlarını ekledikleri özel hata sayfalarına yönlendirebilsinler diye bu özellik iis’e dahil edilmiş.Şimdi esas senaryoyu verelim. Adresinizin şuna benzer bir şey olmasını istiyorsunuzdur;www.siteadınız.com/eklediginiz_bir_yazi
Suya sabuna dokunmadığınızda, bir ziyaretçi bu linke tıklayacak olursa iis, derhal “404 – Aradığınız sayfa bulunamadı” hata sayfasını gönderecektir.Ama daha önce dedik ya, biz istediğimizde iis, 404 durumu oluştuğunda standart hata sayfasını göndermek yerine bize ait olan başka bir asp dosyasının içeriğini işleyip yollayabiliyordu! İşte gelin şimdi bu yönledirmenin nasıl yapıldığına bakalım..ben resimde genel bir ayar (yani iis’te barınan tüm siteler için özel yönlendirme) seçtim ama siz sitenizin barındığı klasörü bulup ona sağ tıklayarak özellikler yolunu seçin!Yukarıdaki resimde “Özellikleri Düzenle” düğmesine tıkladığınızda aşağıdaki pencere gelecektir.Resimde gördüğünüz gibi alanları düzenledikten sonra, yukarıda seçtiğiniz sitenizin dizininde bir adet boş asp dosyası oluşturmalısınız. URL alanına ne yazmışsanız oluşturacağınız boş asp dosyanızın ismi de o olmak zorunda!Bu işlemleri yaptıysanız artık sunucunuzda barınmayan bir dosya, yol, dizin talep edildiğinde, az önce ismini verdiğiniz asp dosyanızın içeriği işlenerek ziyaretçilere hata sayfası niyetine yollanacaktır. Fark ettiğiniz gibi artık statik bir html dosyasına değil dinamik bir asp dosyasına sahipsiniz.Senaryomuza devam edelim. Ne demiştik, sunucumuzda bulunmayan bir adres yazıldı ve iis ziyaretçiye bizim özel asp dosyamızın içeriğini yolladı! Ama unutmayın bu bildiğiniz gibi bir yönlendirme değil! Asp kodlayanların aşina olduğu response.redirect’i yaptığımızda yönlendirilen sayfanın adresi adres çubuğunda görünürdü. Ama durum burada farklı. Ziyaretçi nasıl bir url yazmış olursa olsun (domain alanı tabiiki de sitemizin domaini olacak, bizim anlattığımız kendi alan adımızdan sonra / ile ayrılan kısım) özel asp dosyamızın html-css-javascript içeriğini görmekle birlikte adres çubuğunda özel asp dosyamızın adresi veya dizini görünmez. Tıkladığı – yazdığı adres ne ise o görünür.Artık özel asp dosyanıza kodlar eklemek için açma zamanı geldi. Şimdi dosyanıza;request.ServerVariables(“SCRIPT_NAME”)
kodunu ekleyin ve internet tarayıcı programınızın adres satırına sitenizin adresi/karman_corman_birseyler.LAZ yazdığınızda (böyle bir dizininiz, dosyanız olmadığı sürece) göreceksiniz ki hata almak yerine tertemiz beyaz bir sayfada, adres çubuğuna yazdığınız url’yi göreceksiniz. Ha! Böyle bir dizininiz, dosyanız varsa özel asp sayfanız devre dışı kalacaktır. Doğal olarak sağladığı özellikler de devre dışı kalacaktır.Artık gerisi sizin işiniz. Makalenin anlatım alanı bu kadardı. Yani url’yi artık değişkenlerinize alabildiğinize göre kesin, biçin, veritabanına yazın veya orada aratın.Eşleşen kayıtlarınız olduğunda bir yerlere yönlendirmeden (!) ilgili bilgileri ekrana gönderen diğer asp sayfanızı, özel asp sayfanız içerisinde “server.Execute(‘içerik_üreten_sayfanız.asp’)” şeklinde çalıştırmanızı tavsiye ediyorum. Zira içerik üreten sayfanıza .redirect ile gitmeniz google’ın canını sıkar. Google örümcekleri yönlendiren sayfaları sevmezler!! Kaş yapayım derken göz çıkarmış olursunuz.Ama şunu unutmayın ki artık elinizde “sayfa bulunamadı” hatası kalmadı! Yani özel asp sayfanızda bu durumu kendiniz yakalamak zorundasınız. Aksi halde kullanıcılarınız kimi zaman boş-beyaz sayfalara bakacaklardır.