Судя по
этим ответам в справке для вебмастеров от гугла, гуглобот может нормально индексировать ajax-контент, если правильно использовать якорные ссылки ('#!'), и настроить перенаправление для адресов, содержащих _escaped_fragment_= в запросе.
В качестве сервера использую Apache с mod_rewrite, для перенаправления в .htaccess записано следующее правило:
RewriteEngine on
RewriteCond %{QUERY_STRING} ^_escaped_fragment_=(.*)$
RewriteRule \?_escaped_fragment_=(.*) snapshots/snap_%1.html [NC,R=301,L]
Проблема в том, что такое правило работает не так, как предполагалось: RewriteRule не отрабатывает, и перенаправления не происходит.
В случае такого правила:
RewriteEngine on
RewriteCond %{QUERY_STRING} ^_escaped_fragment_=(.*)$
RewriteRule ^(.*)$ mysite.com/snapshots/snap_%1.html [NC,R=301,L]
url превращается в
mysite.com/snapshots/snap_ACHORLINK.html?_escaped_fragment_=ACHORLINK для ссылки
mysite.com/?_escaped_fragment_=ACHORLINK, что приводит к циклическим перенаправлениям.
Если кто-то объяснит, где закралась ошибка, буду очень благодарен.