12 lutego 2010

Indeksacja stron w AJAX

Wstęp
Od początku pojawienia się technologii AJAX wyszukiwarki internetowe miały problemy z indeksowaniem serwisów opartych na dynamicznym ładowaniu treści. Najpierw, roboty wyszukiwarek nie brały pod uwagę kodu JavaScript, później - nawet mimo ich ciągłego rozwoju i możliwości odnajdywania linków zaszytych w kodzie - problem dynamicznej zmiany poszczególnych elementów strony nie został rozwiązany. W październiku ubiegłego roku Google zaproponował nowy standard tworzenia zapytań AJAX, który umożliwiłby wyszukiwarkom indeksowanie tego typu treści.

Nowy standard obsługi zapytań AJAX
Zapytania wykonywane w AJAX'ie polegają na wywoływaniu funkcji JavaScript dynamicznie zmieniającej określone warstwy lub elementy strony bez konieczności przeładowania całego dokumentu. Często przy dynamicznych zmianach (po kliknięciu użytkownika) w URLu strony pojawiały się ciągi tekstu umieszczane po # (na przykład www.serwis.pl/#strona_glowna) - po to, by użytkownicy mogli później wrócić do określonej konfiguracji strony. Google zaproponował zmianę tego typu adresów poprzez dodanie wykrzyknika tuż po haszu (na przykład www.serwis.pl/#!strona_glowna) oraz wprowadzenie obsługi statycznych stron, w których hasz i wykrzyknik byłyby zamieniane na _escaped_fragment_ (na przykład www.serwis.pl/?_escaped_fragment_=strona_glowna). Te ostatnie URLe miały być przeznaczone tylko dla robotów wyszukiwarek i miały w sposób statyczny prezentować treści, które dla użytkowników widoczne były w AJAX'ie.
Pod koniec stycznia na blogu Search Engine Land pojawiła się informacja, jakoby nowe standardy zostały już wdrożone. Postanowiliśmy to sprawdzić.

Badanie indeksacji stron w AJAX
Badanie zostało przeprowadzone na serwisie ogłoszeniowym http://www.morusek.pl/. Na potrzeby badania został wprowadzony nowy rodzaj stron - formularz z zapytaniem do ogłoszeniodawcy. Link do formularza był umieszczony na każdej podstronie z ogłoszeniem. Każde ogłoszenie miało swoją unikalną stronę formularza, przy czym zadbaliśmy o to, żeby treści tych stron wyraźnie różniły się między sobą, co miało usprawnić proces indeksacji. Połowa ogłoszeń zawierała linki do formularza wywoływanego przez standardowe polecenie a href w HTMLu, druga połowa to były dynamicznie generowane treści w AJAX. W skrócie:

Formularze zostały wdrożone i udostępnione robotom wyszukiwarek 6 lutego 2010 r. Pierwsze podstrony zaindeksowały się już tego samego dnia. Liczbę zaindeksowanych stron przedstawia poniższy wykres.


Badanie zostało przeprowadzone poprzez zapytania typu "site:" w Google (http://www.google.com/search?q=site%3Awww.morusek.pl+inurl%3Aformularz , http://www.google.com/search?q=site%3Awww.morusek.pl%2Fkontakt). Jak widać, oba typy podstron zaczęły sie indeksować w podobnym tempie, oba pojawiają się w wynikach wyszukiwania dla swoich fraz kluczowych, tak więc nowy standard indeksacji jest już wdrożony, a skuteczność odnajdywania linków i stron jest na takim samym poziomie, jak w przypadku standardowych, statycznych odnośników.
Ponadto, zgodnie z zapowiedziami Google, w wynikach wyszukiwania pojawiają się adresy URL zawierające zmienne AJAXowe (na przykład: www.serwis.pl/#!formularz), a nie statyczne zamienniki stron do indeksacji (www.serwis.pl/?_escaped_fragment_=formularz).


Wątpliwości
Właśnie ta ostatnia informacja budzi największe wątpliwości. Po pierwsze, jest ona sprzeczna z wcześniej opisanym przez Google zakazem stosowania cloakingu, czyli prezentacji innej treści dla użytkowników, innej dla wyszukiwarek. Po drugie, daje webmasterom 'spod znaku czarnego SEO' duże pole do popisu poprzez delikatne, czy nawet diametralne różnice w treści prezentowanej wyszukiwarce (poprzez _escaped_fragment_) w porównaniu z treścią widoczną dla użytkownika (przy prezentowanych URLach z #!). Z tego też powodu uważamy, że Google nadal będzie raczej sceptycznie podchodzić do podstron ładowanych przez AJAX, mimo, iż z przedstawionego badania wynika, że traktuje strony na podobnym poziomie (przynajmniej jeżeli chodzi o szybkość indeksacji).

--
Jacek Tkaczuk


Udostępnij:

1 komentarzy:

Marcin Stasiak pisze...

A jak to wygląda obecnie? Czy podstrony ajaxowe są tak samo wartościowe dla wyszukiwarki? I co z linkowaniem? Gógl prawidłowo rozpoznaje linkowanie na podstrony ajaxowe?