Odkąd w Sieci rozpowszechnił się Ajax, wyszukiwarki mają problemy z indeksowaniem tak udostępnianych treści. Specjaliści od SEO radzili, aby w tym wypadku robić to, co radziły zbiory najlepszych praktyk – budować witryny tak, aby były dostępne np. dla głosowych czytników wykorzystywanych przez niewidomych. Jeśli taki czytnik poradziłby sobie ze stroną, to i Google zrobiłoby to bez problemu.
Problemy z kratką
Z kolei samo Google w swoim Centrum dla Webmasterów przedstawiło już w 2007 roku porady związane z dostosowaniem Ajaksa do wyszukiwarek. Cały problem w tym, że Ajax generuje URL-e, które zawierają znak kratki (#). Znaki te wykorzystywane są jednak też do oznaczenia kotwic na stronie, a co za tym idzie, wyszukiwarki ignorują element adresu następujący po tym znaku – z punktu widzenia Google adresy http://strona.pl/produkt.php i http://strona.pl/produkt.php#kategoria=3 są identyczne.
Google zaproponowało, żeby w generowanych przez Ajaksa URL-ach zastąpić znak kratki sekwencją kratki i wykrzyknika (#!). W momencie gdy Googlebot napotka po znaku kratki wykrzyknik, wyśle do serwera WWW żądanie o URL, w którym sekwencja #! zostanie zastąpiona ciągiem ?_escaped_fragment_=.
Ciąg taki mówi serwerowi, aby przekierował odpowiedź do wbudowanej przeglądarki, która wykona ajaksowy kod i wyrenderuje statyczną stronę. Zindeksowane strony w wynikach Google'a będą miały z powrotem konwertowany adres do formy zawierającej sekwencję #!, aby nikt nie musiał oglądać potworka wewnętrznie wykorzystywanego przez wyszukiwarkę.
Implementacja tego rozwiązania wymaga, aby webmasterzy tak przebudowali ajaksowe wywołania, aby zamiast kratki generowały sekwencję #!, zaś administratorzy serwerów WWW skonfigurowali bezinterfejsową (headless) przeglądarkę serwera, aby przetwarzała wersje URL-i zawierające ?_escaped_fragment_= i wykonywała zawarty na nich JavaScript.
Ładowanie





No i dodatkowy demon, który by parsował to wszystko; IMHO to tu jest redundancja. ;)
Browser: Opera/9.80 (Windows NT 6.1; U; en) Presto/2.2.15 Version/10.10
Browser: Mozilla/5.0 (Windows; U; Windows NT 6.0; pl; rv:1.9.2) Gecko/20100115 Firefox/3.6 (.NET CLR 3.5.30729)
Więc ta idea, którą chce Google przeforsować, to jest tylko dla tych, którzy olewają rozwiązania nie-JS.
Poza tym, pozostaje kwestia innych wyszukiwarek.
Browser: Opera/9.80 (Windows NT 6.1; U; en) Presto/2.2.15 Version/10.10
Browser: Opera/9.80 (Windows NT 6.1; U; en) Presto/2.2.15 Version/10.10
Ciężki problem, średnio podoba mi się to co zaproponowało google ale pewnie i oni sami nie są super zadowoleni. Po prostu innych sposobów niż takie kombinowanie nie ma...
Browser: Mozilla/5.0 (Windows; U; Windows NT 6.0; pl; rv:1.9.2) Gecko/20100115 Firefox/3.6 (.NET CLR 3.5.30729)
Browser: Opera/9.80 (Windows NT 6.1; U; en) Presto/2.2.15 Version/10.10
Moim zdaniem powinni zmodyfikować standardy, wprowadzić jakiś nowy znaczek (niech będzie nawet to #!) i ten fragment adresu powinien być przekazywany do serwera. Bo co z tego, że google jak trafi na #! to będzie wiedziało co z tym zrobić skoro już inny robot lub np. user z wyłączonym JS nadal dostanie niepełną stronę, stronę główną etc. bo ja na serwerze nie będę w stanie nadal zidentyfikować na jaki adres tak naprawdę user wszedł.
Browser: Mozilla/5.0 (Windows; U; Windows NT 6.0; pl; rv:1.9.2) Gecko/20100115 Firefox/3.6 (.NET CLR 3.5.30729)
Browser: Mozilla/5.0 (Windows; U; Windows NT 6.0; pl; rv:1.9.2) Gecko/20100115 Firefox/3.6 (.NET CLR 3.5.30729)
korzystających z SWFAddess (ten sam silnik wykorzystuje się do AJAX).
Browser: Mozilla/5.0 (Windows; U; Windows NT 6.0; pl; rv:1.9.1.7) Gecko/20091221 Firefox/3.5.7 GTB6 (.NET CLR 3.5.30729)