当网站上线时记得设置umbDebug为false--致Umbraco开发者

简介:

     从4月份开始接触Umbraco,发现它是一个优秀的、开源的CMS(Content Management System),也是受到微软推荐大家使用的框架。在之前也接触过Orchar,发现它太复杂了,所以就转投Umbraco的怀抱了,最大的原因是它和公 司的开发框架很相似,主要技术是XML+XSLT,当然也可以使用C#,CSHTML和VBHTML去做呈现。同时package和theme做的都很不 错。现在在看它的源代码。目前国内通过Umbraco认证的开发人员不多。主要是国内参与的人员不多,其次Umbraco在中国没有分支机构和金牌合作 商。

     当我们在本地调试好Umbraco之后,我们很多开发基于将自己的网站上线,但是网了关闭Umbraco的debug模式,可能会有安全的漏洞(Security loophole)。以下是翻译老外的blog。

1.Why you should disable trace(为什么我们需要关闭调试模式)

     如果您尝试在您的网站上已启用调试时,你会得到各种有用的信息输出到页面包括安装的相关信息,而这些是对于黑客来说有用和有趣的。它还很容易确定了你是使用的umbraco类型网站。同时它可能暴露了其他你尽可能想避免让他人知道的信息。

2.How to diable the debug settings via the web.config(在web.config中关闭debug调试模式)

    Umbraco在web.config放置了一个很有用的flag,允许开发这很容易设置debug的模式是on/off,关闭debug模式,我们只要 在web.config中搜索到”umbracoDebugMode”,如果是“ture”,将它设置为flase.

<add key="umbracoDebugMode" value="true" />

应该是:

<add key="umbracoDebugMode" value="false" />

更有效的方式是,您应该同时将ASP.NET debug模式设置为false.

<compilation defaultLanguage="c#" debug="true" batch="false" targetFramework="4.0">

应该是:

<compilation defaultLanguage="c#" debug="false" batch="false" targetFramework="4.0">

   PS:在公司的项目中,在kick off Test和production build的时候,build System会自动判断项目是否关闭了debug模式,如果没有关闭,build是不会成功。这也是微软在asp.net 4.0中,web.config下面有web.Debug.config和web.Release.config。方便开发者将开发环境和生产环境分开。

3.Disable it using UrlRewriting.config(在UrlRewriting.config中关闭调试模式)

     如果您喜欢更好的方法,你可以在UrlRewriting.config中添加路由规则,然后每次让用户访问所有的url包含可疑的页面重定向到你指定的 页面。我们可以在UrlRewriting.config重写路由规则(如果你没有其他特别的路由规则,可以直接覆盖它)。

<urlrewritingnet xmlns="http://www.urlrewriting.net/schemas/config/2006/07">
          <rewrites>
                    <add name="nodebugaspx"
                        virtualUrl="(.*).aspx.*umbDebug.*"
                        rewriteUrlParameter="IncludeQueryStringForRewrite"
                        redirect="Application"
                        destinationUrl="~$1.aspx"
                        ignoreCase="true" />

                    <add name="nodebug"
                        virtualUrl="(.*).*umbDebug.*"
                        rewriteUrlParameter="IncludeQueryStringForRewrite"
                        redirect="Application"
                        destinationUrl="~$1"
                        ignoreCase="true" />
          </rewrites>
</urlrewritingnet>

目录
相关文章
|
2月前
|
小程序 IDE 搜索推荐
【社区每周】小程序新增自定义tabBar功能;支持指定默认启动首页(2022年6月第三期)
【社区每周】小程序新增自定义tabBar功能;支持指定默认启动首页(2022年6月第三期)
38 0
|
jenkins 持续交付 网络安全
Jenkins 设置构建失败发送邮件(学习笔记二十一)
本文是jenkins应用系统文章的一部分,大部分来自工作和学习中的实践,部分内容来自官方文档和网友的文章,引用的文章会在“参考资料”部分附上原始链接,如无意中侵犯您的权利,请联系QQ:46106962,如需要进一步的交流请加入QQ群: (Jenkins学习交流)469536515。
3668 0
|
28天前
|
前端开发 JavaScript Java
若依部署上线之后验证码不显示的解决方法之一
若依部署上线之后验证码不显示的解决方法之一
106 0
|
3月前
|
数据安全/隐私保护
自动阅读---秘乐辅助专业版大更新
自动阅读---秘乐辅助专业版大更新
17 0
自动阅读---秘乐辅助专业版大更新
|
8月前
|
容器
老板叫我写个APP自动化--方法二次封装--01点击输入
老板叫我写个APP自动化--方法二次封装--01点击输入
51 0
|
10月前
|
网络协议
【解决方案 十八】连接已重置怎么办
【解决方案 十八】连接已重置怎么办
773 0
|
11月前
|
前端开发
前端学习笔记202303学习笔记第五天-删除默认跳转行为
前端学习笔记202303学习笔记第五天-删除默认跳转行为
35 0
前端学习笔记202303学习笔记第五天-删除默认跳转行为
|
C++
VS平台的基本设置以及相关报错问题解决方法
在刚开始学习编程后,期间总会遇到问题,以前都是记录下来没有整理。现在积少成多,也乘着有空就在这里给整理一下。
130 0
|
前端开发
前端工作总结285-重置新增的mode
前端工作总结285-重置新增的mode
75 0
前端工作总结285-重置新增的mode
|
Web App开发
Chrome 插件开发-桌面通知设置实战演示,设置通知显示、存在时间
Chrome 插件开发-桌面通知设置实战演示,设置通知显示、存在时间
626 0
Chrome 插件开发-桌面通知设置实战演示,设置通知显示、存在时间