Назад | Перейти на главную страницу

Набор правил Apache2 mod_rewrite для веб-приложения AJAX

У меня есть веб-приложение ajax, которое я хотел бы индексировать в Google.

Мои пути используют хэшбанг и выглядят так:

http://tld.com/?_escaped_fragment_en/news
http://tld.com/?_escaped_fragment_de/news

или

http://tld.com/?_escaped_fragment_en/news/news-item-name
http://tld.com/?_escaped_fragment_de/news/news-item-name

Учитывая бесконечное количество способов в Интернете, мои URL-адреса также могут выглядеть следующим образом:

http://tld.com/index.html?_escaped_fragment_en/news/news-item-name

или

http://tld.com/index?_escaped_fragment_en/news/news-item-name

У меня есть файлы, содержащие разметку, которая должна быть видна поисковым системам, в папке под названием «фрагменты», которая находится на корневом уровне корневого каталога документов веб-сайта.

Они организованы по папкам, например:

/fragments/en/ -> containing a file called news 

или

/fragments/en/ -> /news , containg a file called news-item-name 

Google запрашивает файлы как? _Escaped_fragment_, согласно https://developers.google.com/webmasters/ajax-crawling/docs/specification.

Мне нужно создать правила перезаписи apache, которые отображают запрос, например,

http://tld.com/index.html?_indexed_fragment=en/news/news-item-name

в соответствующий файл в моей файловой системе (/ fragments / en / news / news-item-name), чтобы моментальный снимок мог быть передан поисковому роботу.

В настоящее время у меня действуют следующие правила:

RewriteEngine On
RewriteCond %{QUERY_STRING} ^_escaped_fragment_=(.*)$
RewriteRule ^$ /fragments/%1

К сожалению, они не могут иметь дело со структурой папок и просто ищут файл в каталоге фрагментов.