SEO 即搜索引擎优化,不少web开发人员本应该熟悉,至少须要了解的一个知识点。像百度、必应等搜索引擎其实一直都在进化。可是有些优化的技巧可能在短期内不变。css
今天就给你们介绍几个专门针对Asp.net MVC网站的SEO技巧, 固然有些技巧也通用于其余website.html
首先介绍下一个 SEO 的一个小工具(SEO Toolkit),这个工具备点相似于一些分析exe程序性能的工具。可是不一样的是它主要针对网站分析出哪些页面须要作SEO优化。git
若是你已经有一个网站上线了,用这个小工具测试,相信能够找出一些能够优化的地方。该工具是安装到IIS 7.x 里面的,确保你的主机已经安装了IIS,安装完该工具后,能够在IIS Manager上看到github
点击进去 就可使用该工具,它包含了网站SEO分析、Sitemap 生成和Robots相关。web
这里咱们主要使用第一个mvc
能够看到它找出了很多能够SEO优化地方,好比 <meta name=description/> ,<h1/> 等等。每个能优化的地方该工具都给出了详细的介绍和如何实现优化。ide
1) 确保网站的全部连接都是有效的,这个不用多说。工具
2) 确保每个页面都有一个独一无二的title,对于Asp.net mvc 来讲把 <title>@ViewBag.Title</title> 放到_layout.cshtml head 中 ,而后在每一个页面的对应的Action 中设置 ViewBag.Title 便可。这个title 表示了当前页面的主题。性能
3) 确保每一个页面只有一个 <h1> 这里有些页面出于设计的缘由不想影响网页美观,就可能不想要放置<h1>。如何解决这样的问题呢?测试
能够设置css 把<h1> 移出网页范围外,也能够将<h1> 文本的颜色调成背景色, 或者直接添加hidden 类隐藏<h1>, 虽然<h1> 被隐藏了可是仍是能被搜索引擎抓取。
搜索引擎抓取的并非render 以后的页面,而是整个Html 文档。相信很多网站就这么作的
4 ) 设置canonical, 这个优化技巧主要是为了解决因为网址形式不一样内容相同而形成的内容重复问题,好比有三个Url
http://51zhang.net/Oxford/HowOld
http://51zhang.net/Oxford/HowOld?addcomments=true
http://51zhang.net/Oxford/HowOld?deletecomment=true
这三个地址形式不一样,第一个才是但愿呈现给搜索引擎的,那么咱们就能够在其余两个页面的head中添加canonical
<link rel='canonical' href='http://51zhang.net/Oxford/HowOld' />
从功能上讲 canonical能够理解为301永久重定向的辅助功能。
5 ) 尽可能少用Ajax实现的上一页,下一页列表。好比博客园的新闻列表:http://news.cnblogs.com/n/page/3/
若是采用Ajax在本页面实现翻页效果,对于爬虫而言实际上是同一个Url。
6 ) 尽可能给网站添加robots.txt 和sitemap.xml
robots.txt 指示爬虫哪些能够爬取 哪些不能够爬取。好比 博客园的http://www.cnbeta.com/robots.txt
Disallow 表示哪些路劲是不能爬取的。
sitemap.xml 表明了整个网站的地图 可以告诉爬虫网站具体有哪些页面, 若是页面数量少,手动生成一个不是什么大问题。当页面过多时,
这里给你们推荐一个 sitemap 生成工具 https://github.com/maartenba/MvcSiteMapProvider
7 ) 使用直接路由 RouteAttribute
默认建立的Asp.net MVC项目,能够有好几种方式访问主页
可是有些搜索引擎在处理这样的问题时就没那么明智了。固然可使用canonical。若是是Asp.net mvc5 就能够直接经过RouteAttribute
作优化。
SEO优化的技巧确定不止这些,好比专门针对 前段采用AngularJs 的优化方式。这样的技巧也只有在实践中掌握.
欢迎访问个人我的主页 51zhang.net 网站还在不断开发中…..