Url Rewrite

aspnet
  • Turgay Can

    Yazar

    Taner
  • Tarih

    28 Feb, 2012
  • Yorum

    0
  • Görüntüleme

    2413
  • İndirme

    0

Url Rewrite

Merhaba arkadaşlar, bu dökümanda php'de kolay ama asp.net ve iss için biraz baş belası olan url rewrite tekniğinden bahsedeceğim.

Yaptığım örnekte Intelligencia.UrlRewriter.dll kütüphanesini kullandım.
öncelikle bu dll'yi indirip bin klasörümüze kopyalayalım.

Rewrite sınıfımızı (hazır) App_Code klasörine kopyalayım.
indirmek için tıklayınız.

web.config dosyamızda gerekli ayarları yapalım.

1- Config sections

<configuration> tagından hemen sonra aşağıdaki kodu ekleyelim
<configSections>
    <section name="rewriter" requirePermission="false" 
type="Intelligencia.UrlRewriter.Configuration.RewriterConfigurationSectionHandler, 
Intelligencia.UrlRewriter"/>
      </configSections>

2- rewriter modulunu web config'e ekleyelim.biz component kullandığımız için direkt olarak intelligenica ile ilişkilendireceğiz.system.web içine ekliyoruz.

<httpModules>
      <add name="UrlRewriter" 
type="Intelligencia.UrlRewriter.RewriterHttpModule, Intelligencia.UrlRewriter"/>
        </httpModules>

3- rewrite yapacağımız sayfaları tanımyalayım.yine configiration tagı içinde yapıyoruz. ama system.web içine eklemeyin. congfiguration tagı kapanmadan hemen önce ekleyebilirsiniz.

<rewriter>
    <rewrite url="~/haberler/(.*)/(.*).html" to="~/haberdetaylari.aspx?id=$1&title=$2"/>
  </rewriter>

burası bir az can alıcı nokta. rewrite tagında url bölümüne biçimi belirtiyoruz. gördüğünüz 2 * işaretli bölümler bu sayfanın 2 tane get parametresi alacağını gösteriyor. 2 bölümde de bunların değer bilgilerini tanımlıyoruz.$1 ve $2 olarak (id ve title)

yani bu işlem haberdetaylari.aspx?id=23&title=haber_basligi şeklindeki linki haberler/23/haber_basligi.html haline getirecek. burda birden fazla tanımlama yapabilirsiniz.

0 Yorum..

Yorum yapmak için "Giriş yapın" yada "Misafir üye" olarak yorum yapabilirsiniz.

Yorum Yap