Home Contact RSS

Asp.NET ile URL Rewrite

Bir süredir yoğunluk sebebiyle ilgilenemediğim makale yazma işini bugün bulduğum ilk boşlukta yaptım. Çok rahatlatıcı, öneririm. :)

http://sunali.com/blog/archive/2005/08/23/44.aspx adresine incelendiÄŸinde sırasıyla “blog/archive/2005/08/23″ klasörleri oluÅŸturulmuÅŸ ve bu klasörün içerisinde de “44.aspx” isminde bir dosya olması gerektiÄŸini düşünebilirsiniz. Fakat böyle bir zorunluluk yoktur. Asp.Net üzerinde bulunan bir interface’i kullanarak belirtilen adresin – URL kısmında kullanıcının yazdığı adres deÄŸiÅŸtirilmeden kaldığı halde – baÅŸka bir adrese yönlendirilmesini saÄŸlayabilirsiniz.

Makalenin devamını http://www.yazgelistir.com/Makaleler/1000000790.ygpx adresinde okuyabilirsiniz.

Yusuf said,

August 22, 2006 @ 14:00

bu güzel makale için teşekkür ederiz. Url rewrite bazan çetrefil olabilmekte. Bu konudaki karşılaşılan veya karşılaştığınız sorunlar ve çözümleri ile ilgili önerilerinizi paylaşırmısınız?

Coskun SUNALI said,

August 22, 2006 @ 14:17

Selam,

Öncelikle fikirlerinizi belirttiğiniz için ben teşekkür ederim.

YaÅŸanılabilen sorunlardan bir tanesi, tarayıcıların http://localhost/1/2/3/4.aspx olarak rewrite edilmiÅŸ bir URL’de, src özelliÄŸi “a.jpg” olarak verilen bir resmi http://localhost/1/2/3/a.jpg olarak aramasıdır.

Bu sorunu ise src özelliÄŸini “/a.jpg” olarak verdiÄŸinizde aÅŸabilirsiniz. Path özelliklerinin başına tek bir / koyulması, bu path’in aranması iÅŸlemine root üzerinde baÅŸlanması gerektiÄŸini tarayıcılara bildirmektedir.

Aklıma gelen başka özel bir sorun yok. Eğer sizin yaşadığınız bir durum varsa, sorunu çözmeye çalışalım.

İyi çalışmalar.

Yusuf said,

August 22, 2006 @ 14:52

Bahsettiğiniz sorunla ben de karşılaştım ben de tüm imajların kaynağını server tarafında kaynağını tam vererek çözdüm. örneğin root altındaki grafik kalsöründeki a.jpg için http://www.siteurl.com/grafik/a.jpg. bunu server tarafında kendim belirtiyorum. Biraz zor oluyor ama sağlam bir yöntem.

yine response.redirect lerde sorun çıkıyor. bunu yine aynı şekilde server tarafında full url yazarak çözüyorum..

Coskun SUNALI said,

August 22, 2006 @ 14:58

Selam,

DediÄŸim gibi src=”/grafik/a.jpg” ÅŸeklinde kullansanız, iÅŸinizi görmüyor mu?

Bir de, Response.Redirect’lerde nasıl bir sorun çıkıyor?

Teşekkürler.

Yusuf said,

August 22, 2006 @ 15:48

response.redirect te de yine grafiğin kaynağını verirken karşılaştığımız sorunla karşılaşmıştım. daha çok asp.net 1.1 de vardı bu sorunlar. çünkü asp.net 2.0 da master page ile biçok şey sorunsuz çalışıyordu. asp.net1.1 usercontrol ler üzerinden yapmaya çalıştığımız için herşeyi, daha karmaşık ve içiçe bi yapı vardı.

Yusuf said,

August 22, 2006 @ 15:57

sizin sitenizde olduÄŸu gibi dosyanın uzantısını da saklayabilirmiyiz? asp.net bunun için sanırım sunucu üzerinde bir takım ÅŸeyler yapmak lazım. yazılımsal olarak saÄŸlanamıyor. çünkü asp.net te dosya ismini vermeden klasör adını yazınca url ‘e , direk olarak klasör içerisinde default.aspx , default.htm dosyalarını arıyor. bulamazsa sayfayı bulamadım diyor. bu iÅŸlemi iis yapıyor. eÄŸer bulursa default.aspx’i , ilgili sayfayı çalıştırıyor. rewrited page de olabilir bu.

Coskun SUNALI said,

August 22, 2006 @ 16:36

Selam,

Sitemdeki yazılım PHP ile yazılmış ve benim geçiçi olarak kullandığım bir yazılım. PHP bilgim de olduğu için biraz kişiselleştirdim.

ASP.NET ile dediğiniz olayı yapmak mümkün. Yalnız bunun için ISAPI ile ilgili kodlar yazmanız gerekiyor.

Google’da aratmanız durumunda birçok örnek çıkacaktır diye tahmin ediyorum.

Tuna Toksöz said,

September 12, 2006 @ 11:30

Peki asp.net formunun action adresi? bu durumda deÄŸiÅŸmeyecektir(benim hatırladığım kadarıyla tabi). bir çok durumda sorun yaratabilir…
Bunun için de google da arattığımızda çeşitli örnekler mevcut

Coskun SUNALI said,

October 16, 2006 @ 18:09

Tuna Bey,

Öncelikle geç cevap verdiğim için özür dilerim.

BahsettiÄŸiniz durum için System.Web.UI.HtmlControls.HtmlForm class’ını base alarak Form class’ını kendiniz tanımlamalı ve System.Web.UI.HtmlTextWriter class’ının “WriteAttribute” methodunu kullanarak “action” özelliÄŸini kendiniz tanımlamanız gerekmektedir.

Umarım fikir işinize yarar.

osman ayhan said,

March 14, 2007 @ 16:44

Selamlar CoÅŸkun Bey,
Merak ettiÄŸim bir konu var;
Neden URL Re-write konusunda MSDN de dahil olmak üzere bir tane bile VB.NET ile yazılmış kod yok? Ben bu kodu vb.net ile yazmayı baÅŸaramadım ne yazık ki…
Konu hakkında fikirlerinizi bekliyorum…

Selamlar…

ugur said,

June 18, 2007 @ 23:53

http://www.urlrewriting.net/en/Default.aspx

bu adresteki modülü kullanabilirsiniz. Test ettiğimde sorunsuz çalışıyordu. fakat file extesion olmadan çalışması için server da klasörleri default.aspx i açacak şekilde ayarlamak gerek. action sorunu için şu linke bakabilirsiniz:

http://weblogs.asp.net/jezell/archive/2004/03/15/90045.aspx

Ahmet Ertek said,

August 6, 2007 @ 15:56

Selam, bu bilgileri bizlerle paylaştığınız için teşekkür ederim. Ben biraz daha ileri götürerek bunları html uzantısına çevirdim. Local de sorunsuz çalışırken server da hata vermekte. Uzantıyı aspx yaptığımda ise düzelmekte.

Yani 287-hava-sicakliklari.html de hata verirken

287-hava-sicakliklari.aspx çalışıyor.

Localde her ikiside çalışıyor. Nedeni nedir acebA? Kolay gelsin iyi çalışmalar.

airsakarya said,

February 27, 2009 @ 16:20

Ahmet Ertek arkadaşım senin sorunun sunucu ile ilgili.

şu adreste sunucu sahibinin yapması gereken ayarlardan bahsetmiş.

http://www.kodaman.org/yazi/asp-net-te-url-rewriting

aura cleanmax said,

July 5, 2011 @ 11:41

Teşekkürler açıklamalarınız için

RSS feed for comments on this post · TrackBack URI

Leave a Comment