[Linux-programlama] Re: AJAX ve JavaScipt ile URL değiştirme

---------

[Linux-programlama] Re: AJAX ve JavaScipt ile URL değiştirme

From: Mahir B. Aşut <mahir.asut_at_ttmail.com>
Date: Tue, 26 Feb 2008 11:38:44 +0200
Message-ID: <47C3DE24.7090801@ttmail.com>
Selamlar,

Ajax'ın (yani XMLHTTPRequest istekleri) Google başta olmak üzere arama motorları açısından olumsuzluğunu bertaraf etmeniz mümkün değil ki bu durum başlı başına dikkate alınması gereken bir konu.

En iyisi, gerekli gereksiz Ajax kullanımından kaçınmak diye düşünüyorum. Mutlaka endekslenmesi gereken ve gerekmeyen kısımları belirleyip ona göre kullanmak gerekiyor.

Resimlerin gösterimine gelince, mutlaka endekslenmeleri şart değilse bunlarda Ajax kullanımı arama motorları açısından sorun çıkartmaz.

Öte yandan resim gösterimi için kullanılabilecek çok sayıda yöntem ve son derece güzel hazırlanmış java uygulamaları mevcut.

Mahir

Nuri Akman yazmış:
Arkadaşlar,

Artık AJAX kullanımı oldukça arttı. Ancak, bu durum Arama Motorları açısından
sayfanın indexlenmesinde olumsuz sonuç verdi.

Çünkü, JS ile yapılan AJAX çağrıları, Arama Motorları tarafından algılanamıyor.

Örneğin:
[a href="#" onclick="SayfaGoster(3); return false;"]Ürünlerimiz[/a]

Ayrıca, bu örnekte URL'de yazan http://www.mydomain.com ifadesi değişmiyor.
Böyle olunca sayfanın kalıcı linki (permenant link) başkalarıyla paylaşılamıyor.
Yani ziyaretçiler, "Abi, istediğin ürün şu sayfada : xxx " gibi bir mesaj gönderilemiyor.

Burada 3 adet sorun var:
1.) Arama Motorlarında yer alamama
2.) Kalıcı link verememe
3.) Hedefi yeni pencerede/sekmede aç sağ tuş fonksiyonları çalışmıyor.

Aşağıdaki basit çözüm ile buradaki sorunların 2 tanesini gidermek mümkün:

[a href="urunler.php" onclick="SayfaGoster(3); return false;"]Ürünlerimiz[/a]
 
Bu kullanımda, href'e değer girildiği için;
1.) Arama motoru doğru indexleme yapabilir.
2.) Hedefi yeni pencerede/sekmede aç sağ tuş fonksiyonları çalışır.

Geriye sadece AJAX kullanımında adres satırının değiştirilmesi konusu kalıyor.

Geçmişte FLASH kullanılarak bunun yapılabildiğini okumuştum, ancak o zaman ilgimi çekmemişti.

Ajax ile sayfa URL'inin değiştirilmesi, sayfanın yeniden yüklenmesine (post-back) neden olur.
Bu da AJAX'ın getirdiği avantajların silinip gitmesi anlamını taşır.

FaceBook'da Fotograf Albumü bölümünü incelerken şunu gördüm:
Sonraki/Önceki fotoğraf düğmelerine basıldığında URL'de :
http://www.facebook.com/photo.php?pid=300319&id=772293458&ref=nf#pid=160222&id=686426247
gibi "URL DEĞİŞİMİ" olduğunu gözlemledim.

Aynı sayfa adresi şu şekilde yazıldığında yine sayfa çalışmaktadır.
http://www.facebook.com/photo.php#pid=160222&id=686426247

Sanırım AJAX çözümünde bu noktaya odaklanırsam üçüncü ve son sorun da çözülmüş olur.

Bu çerçevede, URL'deki # karakteri sonrasındaki pid ve id gibi parametrelerin ayrılarak PHP'de $_GET['id'] biçiminde kullanılabilmesi için bir çalışma yapmak yeterli olacaktır.

Sorunu ve çözümü bu şekilde tespit ettikten sonra sanırım bu konuda web'den örnek aramaya gerek olmayacaktır.

Diğer taraftan, Apache'deki mod_rewrite ile AJAX çağrısı konusunun ayrıca ele alınması gerekir düşüncesindeyim.

Arkadaşlar, bu konudaki fikirlerinizi grup üyeleri ile paylaşmanızı dilerim.

Selamlar,
Nuri AKMAN





Ustun ERGENOGLU yazmış:
http://www.contentwithstyle.co.uk/Articles/38/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps
aradığınız bu olsa gerek.

26.02.2008 tarihinde serkan@yaramazca.com <serkan@yaramazca.com> yazmış:
  
# sayfa icinde achor olarak kullanilabilir ama burdaki sorun ajax ile
 kullanimi. ajaxin bir dez avantaji da bavk tusunun ve si
  kullanilanlara eklenin calismamasidir. ama bunun # ile sayfa icinde
 cozuldugunu birkac sitede gordum. urlde # li sekilde cagrilinca ajax
 tetikleniyordu ve o sayfa ulasilabiliyordu. ama yontemini tam olarak
 bilmiyorum...


 On 2/26/08, Deniz Dizman <deniz.dizman@gmail.com> wrote:
 > self.location="#hede" dediginiz zaman, ayni sayfada kalirsiniz, ancak URL
 > degismis olur.
 > Ornegin www.hodo.com/index.php desiniz ve yukardaki kodu yazdiniz,o zaman
 > www.hodo.com/index.php#hede olur ama ayni sayfada kalirsiniz reload da
 > etmez.
 > basindaki # isareti buradaki kilit nokta :)
 >
 >
 >
 > 2008/2/25 Anıl KARADAĞ <anil.karadag@gmail.com>:
 >
 > >
 > > Ajax ile sunucuda islemler yapar sonucunu sayfa postback  olmadan
 > > yayinlariz. Url degisimi demek sayfanin yeniden yuklenmesi (aynı
 > > sayfaysa) demektir. Ajax ile gittigin url arka planda kalir,
 > > goruntulenmez.
 > >
 > > facebooknun bu degisimi ajaxla yaptigina emin misin? sayfayi hic
 > > incelemedigimden bahsettigin seyi gormedim.
 > >
 > > Pzt, 2008-02-25 tarihinde 15:09 +0200 saatinde, Nuri Akman yazdı:
 > > > Arkadaşlar,
 > > >
 > > > Haırladığım sayfada resimler üzerinde ileri / geri hareket butonlarını
 > > > kullanarak resim galerisi hazırladım.
 > > >
 > > > Sayfa HIZLI çalışsın düşüncesiyle resim çağırmayı AJAX ile hallettim
 > > >
 > > > Tabi ben bunu ajax ile yaparken URL değişmiyor :(
 > > >
 > > > Halbuki, facebook'taki izlenimim bunun yapılabildiği yönünde.
 > > >
 > > > Bu konuyu nasıl yapabilirim acaba?
 > > >
 > > > Selamlar,
 > > > Nuri AKMAN
 > > >
 > > > _______________________________________________
 > > > Linux-programlama mailing list
 > > > Linux-programlama@liste.linux.org.tr
 > > > http://liste.linux.org.tr/mailman/listinfo/linux-programlama
 > >
 > > _______________________________________________
 > > Linux-programlama mailing list
 > > Linux-programlama@liste.linux.org.tr
 > > http://liste.linux.org.tr/mailman/listinfo/linux-programlama
 > >
 >
 >
 >
 > --
 > dendiz
 > http://dendiz.blogspot.com
 >
 _______________________________________________
 Linux-programlama mailing list
 Linux-programlama@liste.linux.org.tr
 http://liste.linux.org.tr/mailman/listinfo/linux-programlama

    
_______________________________________________
Linux-programlama mailing list
Linux-programlama@liste.linux.org.tr
http://liste.linux.org.tr/mailman/listinfo/linux-programlama

  


_______________________________________________ Linux-programlama mailing list Linux-programlama@liste.linux.org.tr http://liste.linux.org.tr/mailman/listinfo/linux-programlama

No virus found in this incoming message. Checked by AVG Free Edition. Version: 7.5.516 / Virus Database: 269.21.1/1298 - Release Date: 25.02.2008 20:45

_______________________________________________
Linux-programlama mailing list
Linux-programlama_at_liste.linux.org.tr
http://liste.linux.org.tr/mailman/listinfo/linux-programlama
Received on Tue 26 Feb 2008 - 11:01:13 EET

---------

Bu arsiv hypermail 2.2.0 tarafindan uretilmistir.