2016-10-10 75 views
0

我在Google搜索控制檯上收到此錯誤。我嘗試了一堆東西,但沒有任何工作。任何建議,如果我失去了一些東西。Sitemap中的名稱空間不正確

描述:您的站點地圖或站點地圖索引文件未正確聲明名稱空間。

例如:您的站點地圖或站點地圖索引文件未聲明預期的命名空間:http://www.sitemaps.org/schemas/sitemap/0.9 標籤:網址設定

這是我看到的網站地圖:

<?xml version="1.0" encoding="utf-8" standalone="yes"?><urlset xmlns:Xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"> 

我的代碼:

public XmlSitemapResult(IEnumerable<ISitemapItem> items) 
     { 
      _items = items; 
     } 

     public override void ExecuteResult(ControllerContext context) 
     { 
      string encoding = context.HttpContext.Response.ContentEncoding.WebName; 
      XDocument sitemap = new XDocument(new XDeclaration("1.0", "utf-8", "yes"), 
       new XElement("urlset", new XAttribute(XNamespace.Xmlns.GetName("Xmlns"), "http://www.sitemaps.org/schemas/sitemap/0.9"), 
         from item in _items 
         select CreateItemElement(item) 
        ) 
       ); 

      context.HttpContext.Response.ContentType = "text/xml"; 
      context.HttpContext.Response.Flush(); 
      context.HttpContext.Response.Write(sitemap.Declaration + sitemap.ToString()); 
     } 
+0

你已經嘗試過改變http://www.sitemaps.org/schemas/sitemap/0.9 http://www.google.com /schemas/sitemap/0.9? – 2016-10-10 18:27:12

回答

0

我想我知道什麼問題嘗試從urlset標記中刪除Xmlns。示例XML網站地圖:

<?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> 

字體:http://www.sitemaps.org/protocol.html

+0

你的意思是我的「Xmlns」吧? –

+0

是的,就是這樣。 – 2016-10-10 18:48:17

+0

好的,我會試一試。所以讓它像這樣吧?

相關問題