本站站点地图上线——asp.net mvc生成站点地图


介绍

有看过一些SEO的东西,了解到网站需要有sitemap(站点地图)页面,方便搜索引擎了解网站的链接地址、网页更新频率、页面在网站中的分量等。本站的站点地图在寒假期间早弄出来了,只是现在才更新到网上,主要原因一是没太多时间,二是有点懒。


站点地图内容

各搜索引擎支持的站点地图格式为文本格式、xml格式、sitemap索引格式,不同的搜索引擎可能会默认侧重某种格式。博主现在使用的是xml格式。

下面是一个完整的站点地图内容:

<?xml version="1.0" encoding="utf-8"?>

<urlset xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://www.sitemaps.org/schemas/sitemap/0.9" 

xsi:schemaLocation="http://www.sitemaps.org/schemas/sitemap/0.9 http://www.sitemaps.org/schemas/sitemap/0.9/sitemap.xsd">

<url>
<loc>http://www.vandend.pw/</loc>
<lastmod>2014-03-08</lastmod>
<changefreq>daily</changefreq>
<priority>1.0</priority>
</url>
<url>
<loc>http://www.vandend.pw/Articles/51</loc>
<lastmod>2014-02-26</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>

</url>

……

</urlset>


说明:

1.第一二行指明文件类型、版本信息;

2.<url></url>指明每条网页url的内容,有多少对这样的标签,就证明要告诉搜索引擎多少条url;

3.<loc></loc>指明网页链接地址;

4.<lastmod></lastmod>指明链接的最后更新时间;

5.<changefreq></changefreq>指明链接更新频率,可以为"always", "hourly", "daily", "weekly", "monthly", "yearly";

6.<priority></priority>指明该链接相对于其他链接的优先权比值,取值为0.0-1.0间。


asp.net mvc生成站点地图

站点地图无非就是向页面呈现一些字符串,对于xml格式的站点地图,asp.net mvc网站难点在于如何在页面显示xml,那么显示xml的站点地图可以参考下面action:

public ActionResult Sitemap()
{
    StringBuilder sb = new StringBuilder();
    //拼接站点地图字符串到sb中

    //……
    byte[] byteArray = System.Text.Encoding.Default.GetBytes(sb.ToString());
    HttpContext.Response.ContentType = "text/xml";
    HttpContext.Response.Write(System.Text.Encoding.UTF8.GetString(byteArray));
    return null;
}


有待改进

本站现在生成站点地图是动态的,每次连接站点地图的链接时,都由服务器通过分析网站内所有内容生成一次页面,从性能角度考虑这是不可取的,当网站的链接多的时候产生的负面压力巨大啊~所以该功能是需要改进的,一般的解决方法是生成静态的站点地图,在网站中有页面更新或有新页面时自动修改该静态站点地图页面。解决这个又要花点时间,等有空了再说了~


本站站点地图链接

本站的站点地图链接已放在网站脚注位置,链接为:http://www.vandend.pw/sitemap.xml

本站站点地图以及提交到谷歌站长工具中,效果明显。但百度的站点地图提交功能目前好像只对部分网站开放,这也太不给力了吧。

另外,找到一个网站站点地图生成的工具页面,有兴趣的朋友可以看看:

http://free-sitemap-generator.whyandhow.org/


<<返回列表