SharePoint Arama Sonuçlarında Sistem, Liste, Doküman Gibi Arka Plan Sayfaların Gelmesini Engellemek

1+

Merhaba arkadaşlar bugün sizlere sharepoint ortamında search tarafında arama yaptığınızda gelecek sonuçlarda liste, doküman veya herhangi bir sistem sayfasının sonuçlarda gelmemesini nasıl sağlayabileceğimizden bahsedeceğim.

Burada basit yöntemlerden biri search result teamplate düzenliyerek burada gelen sonuçlarda url kısmında filtreler ekleyerek bahsettiğimiz tiplerde sayfaların gelmemesini sağlayabilirsiniz ama bu yöntemden daha iyi ve performanslı bir yolda mevcut.

İlk olarak sharepoint central administratotion a giderek search servisimize gidiyoruz.

Servis sayfasına geldiğiniz zaman sol tarafta yer alan menülerden “Crawling” başlığı adı altında bulunan “Crawl Rules” seçeneğine tıklayarak kural tanımlama sayfasına gidiyoruz.

Bu sayfada daha önceden tanımlanmış kurallarınız varsa görebilirsiniz. Yeni kurallar ekleyebilirsiniz ya da örnek sayda adresleri ile kurallarınıza uyup uymadığını test edebilirsiniz. Ben şimdi yeni kurallarımı eklemek için “New Crawl Rule” diyerek yeni kural tanımlama ekranına gidiyorum.

Burada tanımlamalar yapıldığın da tanımlama da belirlediğinize göre url adreslerini search crawl çalışırken indexlemeye dahil eder ya da etmez. Bu saye de search performansında da kazanç sağlanmış olacaktır.

Burada “Path” yazan kısma altındaki açıklamadaki gibi nasıl bir url yapısında istiyorsak o şekilde url formatımızı yazıyoruz ve bu formata uyan sayfaların dahil edilecek mi yoksa dahil edilemeyecek mi diye seçiyoruz.

Bizim dediğimiz şekilde url tanımlaması yapmamız gerekmektedir. Bunlar:

  • *://*/lists/*   —   Exclude   —   Burada hangi protokol ya da hangi domain de sayfa adında olursa olsun bütün url yapısında list geçen adresleri engellenmesini istiyoruz.
  • *://*/forms/*   —   Exclude   —   Bu tanımlamada ise list yapısındaki gibi tüm forms yapıları yani page edit sistem sayfaları vs gibi url adreslerini de engellenmesini istiyoruz.

Bu iki adresi tanımladıktan sonra baktığımız zaman sayfaların da arama sonuçlarında gelmediğini göreceksiniz. Burada sayfaların engellenmesinin sebebi sayfa kütüphanelerinin görünüm sayfalarının search te gelmemesi bu sayfalar kütüphanesinin içindeki tüm sayfalarında indexlenmemesine sebep olacaktır.

Bunu engellemek için ise kütüphanelerin sadece dispform.aspx sayfalarının arama sonuçlarına dahil olması kuralını ekliyoruz.

  • *://*/forms/dispform.aspx   —   Include   —   Bu sayede sayfalarda search sonuçlarında gelecektir.

Tüm kurallarımız yukarıdaki gibi eklemiş olduk ama bu kurallara göre test yaptığımız zaman yine sayfaların gelmediğini göreceksiniz. Bunun sebebi ise burada ki kurallar sıralama ya göre if else mantığı gibi çalışmaktadır. Yani sıraya göre herhangi bir kurala takılan bir adres diğer sıradaki kurallara bakılmaksızın uygulanacaktır.

Bu sıralama da *://*/forms/* kuralını *://*/forms/dispform.aspx kuralından önce geldiği için ve bu kural diğerinin kapsayıcısı olduğu için dispform.aspx sayları da *://*/forms/* kuralında takılıp diğer kurala bakılmaksızın dahil edilmeyecektir.

Sıralamayı bahsettiğimiz gibi değiştirdikten sonra tüm kurallara uygun şekilde tanımlamalarımızı yapmış olduk. Bahsettiğim gibi burada ekleyeceğiniz kurallardan bir diğerininde kapsayacak bir kural ise bu sıralamaya dikkat edilmesi gerekmektedir.

Bu ayarlamaları sorunsuz yapıp test ettğimizde herhangi bir hata görülmüyorsa tek yapmamız gereken search crawlu full crawl olarak tekrar başlatmamız gerekmektedir. Bu sayede search yeni kurallarımıza göre engellediğimiz sayfaları indexlemeyecek şekilde tekrar indexlemesini yapacaktır ve bu kurallara uymayan sayfalar arama sonuçlarında gelmeyecektir.

1+

Bir Cevap Yazın