Мечта | Дата: Пятница, 29.07.2011, 20:30 | Сообщение # 1 |
Сообщений: 428
| Очень часто я вижу темы с названием "Как сделать Sitemap", "Куда кинуть Sitemap" и т.д. и т.п. Так вот решил найти и выложить FAQ по этому самому Sitemap, думаю многим начинающим, также возможно профессионалы найдут что-то новое для себя. Sitemaps XML формат
Этот документ описывает XML схему для протокола Sitemap.
Формат протокола Sitemap состоит из XML тегов. Все значения данных в Sitemap должны быть экранированы. Сам файл должен быть в кодировке UTF-8.
Sitemap должен: 1. Начинаться с открывающего тега и заканчиваться закрывающим тегом tag. 2. Устанавливать пространство имен (namspace) (стандарт протокола) в теге . 3. Содержать элемент для каждого адреса (URL), как родительский XML тег. 4. Содержать дочерний элемент для каждого родительского тега .
Все другие теги являются необязательными. Поддержка дополнительных тегов может отличаться в разных поисковых системах. Для детальной информации следует обращаться к документации соответсвующей поисковой системы.
Пример XML Sitemap
В следующем примере представлен Sitemap, содержащий всего один адрес и использующий все необязательные теги. Code <?xml version="1.0" encoding="UTF-8"?> <urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"> <url> <loc>http://www.example.com/</loc> <lastmod>2005-01-01</lastmod> <changefreq>monthly</changefreq> <priority>0.8</priority> </url> </urlset>
Ваш файл Sitemaps должен быть в кодировке UTF-8 (в большинстве случаев можно выбрать кодировку при сохранении файла). Как и во всех файлах формата XML, все специальные символы, перечисленные в таблице ниже, в значениях данных (включая URL должны быть специальным образом экранированы. Символ Экранирование Амперсанд & &; Одинарная кавычка ' '; Двойная кавычка " "; Знак больше > >; Знак меньше <<; Дополнительно, все адреса (включая адрес Sitemap), должны быть экранированы и кодированы (URL-escaped and encoded) для совместимости с веб-сервером, где они размещаются. Однако, если для определения адресов используются скрипты, приложения или лог-файлы (что-либо, кроме набирания их вручную), эта процедура выполняется автоматически. Пожалуйста проверьте соответствие ваших адресов стандарту для URI RFC-3986, стандарту RFC-3987 и XML стандарту. Ниже пример адреса страницы, где используется не-ASCII символ (ü), как и символ, требующий экранирования (&): Code http://www.example.com/ümlat.html&q=name
Ниже тот же адрес, кодированный в ISO-8859-1 (для размещения на сервере с поддержкой соответствующей кодировки) и URL-кодированный: Code http://www.example.com/%FCmlat.html&q=name
Ниже представлен тот же адрес, кодированный в UTF-8 (для размещения на сервере с поддержкой соответствующей кодировки) и URL-кодированный: Code http://www.example.com/%C3%BCmlat.html&q=name
Ниже тот же самый адрес, но еще и с экранированием спецсимволов: Code http://www.example.com/%C3%BCmlat.html&q=name
Пример XML Sitemap
Следующий пример представляет Sitemap в XML формате. Sitemap в примере содержит небольшое количество адресов страниц, для каждой из которых используется различный набор необязательных параметров. Code <?xml version="1.0" encoding="UTF-8"?> <urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"> <url> <loc>http://www.example.com/</loc> <lastmod>2005-01-01</lastmod> <changefreq>monthly</changefreq> <priority>0.8</priority> </url> <url> <loc>http://www.example.com/catalog?item=12&desc=vacation_hawaii</loc> <changefreq>weekly</changefreq> </url> <url> <loc>http://www.example.com/catalog?item=73&desc=vacation_new_zealand</loc> <lastmod>2004-12-23</lastmod> <changefreq>weekly</changefreq> </url> <url> <loc>http://www.example.com/catalog?item=74&desc=vacation_newfoundland</loc> <lastmod>2004-12-23T18:00:15+00:00</lastmod> <priority>0.3</priority> </url> <url> <loc>http://www.example.com/catalog?item=83&desc=vacation_usa</loc> <lastmod>2004-11-23</lastmod> </url> </urlset>
Использование индексных файлов Sitemap (группировки нескольких файлов Sitemap)
Можно создать несколько файлов Sitemap, но каждый файл Sitemap не должен содержать более 50 000 адресов и не должен превышать объем в 10 Мегабайт (10 485 760 байт). При желании можно сжать файлы Sitemap с помощью gzip, чтобы не превысить 10MB и,тем самым, уменьшить объем исходящего трафика. Если возникает необходимость указать более 50 000 адресов, следует создать несколько файлов Sitemap.
Если вы создаете несколько файлов Sitemaps, то следует все их перечислить в специальном индексном файле. Индексные файлы Sitemaps не должны содержать ссылок на более, чем 1000 обычных Sitemaps и объем индексного файла не должен превышать 10 Мбайт (10 485 760 байт). XML формат индексного файла аналогичен формату обычного файла Sitemaps.
Обязательные требования к индексному файлу Sitemaps: Индексный файл должен начинаться открывающим тегом и заканчиваться закрывающим тегом . Включать элемент для каждого файла Sitemaps как родительский XML тег. Включать дочерний элемент для каждого родительского элемента . Необязательный тег также доступен для индексных файлов Sitemaps.
Примечание: индексный файл Sitemaps может включать ссылки на файлы Sitemaps только на том же домене, где находится сам индексный файл. Например, webartsolutions.com/sitemap_index.xml может включать файлы Sitemaps на webartsolutions.com, но не на chernyshov.kiev.ua или notes.webartsolutions.com. Как и обычные файлы Sitemaps, индексные файлы должны быть в кодировке UTF-8. Пример индексного файла Sitemaps
В следующем примере представлен индексный файл Sitemaps, который содержит ссылки на два обычных файлаSitemaps: Code <?xml version="1.0" encoding="UTF-8"?> <sitemapindex xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"> <sitemap> <loc>http://www.example.com/sitemap1.xml.gz</loc> <lastmod>2004-10-01T18:23:17+00:00</lastmod> </sitemap> <sitemap> <loc>http://www.example.com/sitemap2.xml.gz</loc> <lastmod>2005-01-01</lastmod> </sitemap> </sitemapindex>
Примечание: Адреса обычных Sitemaps в индексном файле, как и другие значения в XML файлах, должны быть экранированы. Местонахождение файла Sitemaps определяет совокупность адресов страниц, которые могут быть включенры в этот Sitemaps. Файл Sitemaps, размещенный по адресу example.com/catalog/sitemap.xml может содержать только адреса страниц, начинающихся с example.com/catalog/, но не может включать адреса, начинающиеся с example.com/images/. Если у вас есть право на изменение документа по адресу example.org/path/sitemap.xml, это означает, что вы также имеете право предоставлять информацию об адресах, начинающихся с префикса example.org/path/. Адреса, которые являются действительными при их перечислении в файле example.com/catalog/sitemap.xml: Code example.com/catalog/show?item=23 example.com/catalog/show?item=233&user=3453
Адреса, которые являются недействительными при их перечислении в example.com/catalog/sitemap.xml: Code example.com/image/show?item=23 example.com/image/show?item=233&user=3453 example.com/catalog/page1.html
Проверка файлов Sitemaps Следующие XML schemas определяют элементы и аттрибуты, которые могут появиться в вашем файле Sitemaps. Вы можете загрузить эту эту схему по ссылке ниже: Для файлов Sitemaps: http://www.sitemaps.org/schemas/sitemap/0.9/sitemap.xsd Для индексных файлов Sitemaps: http://www.sitemaps.org/schemas/sitemap/0.9/siteindex.xsd Есть некоторое количество инструментов, которые могут помочь проверить структуру файлов Sitemaps, основываясь на этой схеме. Можно найти список таких инструментов по любой из ссылок, представленных ниже: http://www.w3.org/XML/Schema#Tools http://www.xml.com/pub/a/2000/12/13/schematools.html Для проверки обычного или индексного файла Sitemaps по схеме, XML-файл должен содержать дополнительные заголовки, как показано ниже.
Файл Sitemaps: Code <?xml version='1.0' encoding='UTF-8'?> <urlset xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.sitemaps.org/schemas/sitemap/0.9 www.sitemaps.org/schemas/sitemap/0.9/sitemap.xsd" xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"> <url> ... </url> </urlset>
Индексный файл Sitemaps: Code <?xml version='1.0' encoding='UTF-8'?> <sitemapindex xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.sitemaps.org/schemas/sitemap/0.9 www.sitemaps.org/schemas/sitemap/0.9/siteindex.xsd" xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"> <sitemap> ... </sitemap> </sitemapindex>
Вы можете расширить протокол Sitemaps, используя собственные пространства имен. Просто пропишите эти пространства имен в корневом элементе XML.
Например: Code <?xml version='1.0' encoding='UTF-8'?> <urlset xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.sitemaps.org/schemas/sitemap/0.9 www.sitemaps.org/schemas/sitemap/0.9/sitemap.xsd" xmlns="http://www.sitemaps.org/schemas/sitemap/0.9" xmlns:example="http://www.example.com/schemas/example_schema"> <!-- namespace extension --> <url> <example:example_tag> ... </example:example_tag> ... </url> </urlset>
|
|
| |