Вопрос

Я использую ASHX для доставки My SiteMape для Google. Все это работало отлично до недавнего времени.

При запросе карты сайта в Google в http://www.naughtyfancydress.com/sitemap.ashx Я получаю: xml ошибка анализа: не хорошо сформировано местоположение: http://naughtyfancydress.com/sitemap.ashxСтрока № 1, столбец 1: `i�%&/m� {j�

Мой разделенный код в ASHX выглядит как:

context.Response.ClearHeaders();
context.Response.ClearContent();
context.Response.ContentType = "text/xml";
context.Response.ContentEncoding = Encoding.UTF8;
context.Response.Cache.SetExpires(DateTime.Now.AddSeconds(3600));
context.Response.Cache.SetCacheability(HttpCacheability.Public);

var writer = new XmlTextWriter(context.Response.OutputStream, Encoding.UTF8);
writer.Formatting = Formatting.Indented;

writer.WriteStartDocument();
writer.WriteStartElement("urlset");
writer.WriteAttributeString("xmlns:xsi", "http://www.w3.org/2001/XMLSchema-instance");
writer.WriteAttributeString("xsi:schemaLocation", "http://www.sitemaps.org/schemas/sitemap/0.9 http://www.sitemaps.org/schemas/sitemap/0.9/sitemap.xsd");
writer.WriteAttributeString("xmlns", "http://www.sitemaps.org/schemas/sitemap/0.9");

writer.WriteStartElement("url");
writer.WriteElementString("loc", "http://www.naughtyfancydress.com/");
writer.WriteElementString("changefreq", "daily");
writer.WriteElementString("priority", "1.0");
writer.WriteEndElement();

writer.WriteEndElement();
writer.WriteEndDocument();
writer.Flush();
writer.Close();

Любые идеи о том, как решить, будут приветствоваться.

РЕДАКТИРОВАТЬ: Если вы проверьте ссылку выше в Chrome, ничего не отображается, я считаю, что это проблема Chrome, пожалуйста, проверьте ссылку с Firefox.

Это было полезно?

Решение

Для кого -либо еще проблема заключалась в том, что в Global.asax в методе Application_prerequesthandlerexecute я был в своем контенте.

Это, очевидно, меняет контент, кодирующий GZIP от UTF-8, хотя он был указан выше. Это исправление, убедитесь, что обработчик Sitemap не отправляет контент как GZIP.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top