Asp.net Web 应用程序正式发布前,我们还是做一些检查,所以需要这个CheckList,如下图今天的Asp.net 已演化这样的了:

  但不管是什么组件,目前的Web最终还得通过Http,我们可以在不同层次做相应的检查。

基本

1. 所有UnitTest单元测试都通过了吗?这个看起来很简单的检查,但如果你的项目没有持续集成,你可能忘记检查是否所有的测试都通过了。前提还有这些UnitTest覆盖大部分代码。

2. 浏览一下网站做一个简单的冒烟测试。试试W3C validator,这些是检查是否符合Web标准。

3. 是否所有StyleCop 测试都通过。 不是所有开发人员都喜欢这么做,但StyleCop的确是一个确保你的代码与常规的风格保持一致。但基本的把代码弄整齐是值得这么做的。以前写过一片StyleCop of ReSharp与VisualStudio集成的Post.

 

性能

Web页面的性能是很重要的。 我们总是确保任何新功能高效且跑得快。

1. 项目是否采用Release模式发布。当部署一台服务器,你应该总是确保你的应用程序运行在Release模式下。如果你仍然运行你的应用程序在Debug模式下,Asp.net MVC需要使用更多内存来解析一个View名称。

2. 站点是否运行过Google PageSpeed了? PageSpeed 是个非常棒的工具,它与Chrome集成允许你profile你的web page的性能。 使用它很明显发现你的web页面的性能问题。

3. 有没有运行过Yahoo! YSlow? YSlow是另一个web性能测试工作,可同时工作于Firefox与Chrome.  你能发现任何明显的性能问题在你的web页面。

4. 有没有图标? 这个经常忘记的问题之一,忘记上传它可能会影响你的站点性能问题。这个有篇文章关于Instagram的性能问题。

 

配置

1. 连接字符串是否指向正确的位置?这个是最简单的,但值得检查。

2. Error logs是否指向正确的位置?你是否写日志到文件或数据库,确何它的路径正确。

 

安全

1.你的website安全吗?一个简单的测试Asafaweb将告诉你如果你的网站有任何明显安全问题需要注意。Asafsweb站点也给你一个选项计划常规扫描,它是免费的。还可以使用AntiXSS,这是一个微软提供的静态扫描工具。可以一定程序防止跨站脚本攻击,SQL注入。还有这些站点将给你一些提示:Information Security Resource, OWASP Top Ten Project

2.自定义错误页面都工作正常? 试着破坏站点查检你是否正确配置自定义错误页面。如果没有,将会显示所有stack trace的错误信息。否则可以就可能出来这些严重的问题

 

这个CheckList是很简单的,在你要发布新功能到你的项目可用来看看。还有一个可以参考的站点webdevchecklist.com。 回想你的发布时通常会哪儿检查?

您可能感兴趣的文章:

Asp.net移除Server, X-Powered-By, 和X-AspNet-Version头

用SquishIt最小化Css与Javascript文件

Improving .NET Application Performance and Scalability

 

作者:Petter Liu
出处:http://www.cnblogs.com/wintersun/
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
该文章也同时发布在我的独立博客中-Petter Liu Blog

Asp.net发布的CheckList的更多相关文章

  1. iis 7.0 asp.net发布问题

    问题1: 配置错误:不能在此路径中使用此配置节.如果在父级别上锁定了该节,便会出现这种情况.锁定是默认设置的………… 解决方案: 因为 IIS 7 采用了更安全的 web.config 管理机制,默认 ...

  2. asp.net发布到IIS中出现错误:处理程序“PageHandlerFactory-Integrated”在其模块列表中有一个错误模块“ManagedPipelineHandler”

    asp.net发布到IIS中出现错误:处理程序“PageHandlerFactory-Integrated”在其模块列表中有一个错误模块“ManagedPipelineHandler” http:// ...

  3. 如何将ASP.NET-WebApi发布到IIS6.0上(转)

    关于"如何将ASP.NET-WebApi发布到IIS6.0上"的这方面的学习,一开始项目组长让我们接触的时候,我的心情是这样的 哇呜.jpg 当时真的是一脸懵逼啊,对于刚接触asp ...

  4. asp.net 发布后,遇到的导出excel报错的问题

    做的asp.net程序,最近要发布在外网上,发布过程不太难,网上都有现成的,只要按照相应的步骤基本都不会有什么问题,关键是发布成功后,程序中涉及到excel的导出或者导入问题,就会提示“检索COM 类 ...

  5. 【转】asp.net发布到IIS中出现错误:处理程序“PageHandlerFactory-Integrated”在其模块列表中有一个错误模块“ManagedPipelineHandler”

    原文:http://blog.csdn.net/mazhaojuan/article/details/7660657 开发web项目时需要安装IIS,在安装好IIS的Windows7本上发布asp.n ...

  6. asp.net发布和更新网站

    我们一般使用ftp软件来更新网站,而更新之前的一个步骤就是发布项目.以下将讲解asp.net mvc如何发布网站. 打开项目 右键点击项目,选择“发布” 第一次发布前,需要配置一下发布配置文件:点击” ...

  7. asp.net发布网站(转)

    1.         在Web项目中点击发布网站,如图1所示 图1 2.         选择要发布的路径——>“确定”,如果项目显示发布成功就可以了.如图2所示 图2 3.         打 ...

  8. ASP.NET发布后,功能不响应

    题记:稀奇古怪的错误,往往是由低级脑残错误产生的 ASP.NET网站,本地调试一切正常.部署到服务器后,结果登陆按钮就卡住了,点击就是没反应. 浏览器显示Internal Server Error 5 ...

  9. ASP.NET发布网站遇到的几个问题

    环境背景 操作系统:Win7 开发工具:Visual Studio 2013 Framework: Framework 4.0 Issue1: 无法识别的属性“targetFramework” 解决方 ...

随机推荐

  1. [原创]Andorid DexClassLoader的创建过程解析(基于5.0)

    做Android插件框架时,经常会用到dex的动态加载,就要直接或间接的使用DexClassLoader,在new DexClassLoader的时候Android系统做了很多工作,下面我们详细分析一 ...

  2. 使用Object的wait,notify,notifyAll做线程调度

    我们知道java中的所有类的祖先都是Object,Object类有四个个方法wait(),wait(long timeout),notify(),notifyAll(),这四个方法可以用来做线程的调度 ...

  3. 几种图片下载lib对比

  4. oracle vm virtualbox 如何让虚拟机可以上网

    刚安装了虚拟机,系统linux2.6. 可是想安装一些软件,发现没法联网.郁闷~  还要手动设置网络,可是也不是小白就可以干的事情,还要弄清楚原理才行. http://reverland.bitbuc ...

  5. 用SQL server导出到oracle,查询时提示“表或视图不存在ORA-00942”错误

    用SQL server2005的导出工具,将数据导出表到oracle,表名称里看到有这张表了,但查询或删除时都提示“ORA-00942表或者试图不存在”的错误,上网查了一下,是如下原因: “查询或删除 ...

  6. Form personization(Form 个性化)报无权限

    总部的同事利用form personization对工单的一些Form做了个性化,发现可能设的有问题,造成用户无法关工单.想要看一下她是怎么设的,可报没权限.经过研究发现,把个人Profile 的 U ...

  7. Go语言实现HashSet

    set.go // set project set.go package set type Set interface { Add(e interface{}) bool Remove(e inter ...

  8. c++ 相关的技术资源整理归类

    最近一段时间 c++ 社区里最火热的话题莫过于 cppcon2015 了, isocpp 上一堆相关的新闻,其中有一个页面罗列了该会议的全部主题, 匆匆一瞥几乎眼花缭乱,为期一个星期的会议竟有上百个演 ...

  9. SmartJS 第一期(0.1)发布 - AOP三剑客

    隔了好久才终于又发布了一点东西,SmartJS是最近才开始搞的一个开源js库,目的是做一些比较有特点的事情(smartjs暂时也是依赖于jquery). SmartJS的内容规划比较多,也无法在短时间 ...

  10. java io系列06之 序列化总结(Serializable 和 Externalizable)

    本章,我们对序列化进行深入的学习和探讨.学习内容,包括序列化的作用.用途.用法,以及对实现序列化的2种方式Serializable和Externalizable的深入研究. 转载请注明出处:http: ...