在试图部署一个.net 3.5网站的默认应用程序池IIS7框架部分设置为4.0时,我得到以下错误。 定义了一个重复的“system.web.extensions / scripting / scriptResourceHandler”部分。 评论违规线路也没有帮助。 任何我需要做什么或看什么指针?
.NET中有一种简单的方法来快速获取当前的协议,主机和端口吗? 例如,如果我在以下url: http://www.mywebsite.com:80/pages/page1.aspx 我需要返回: http://www.mywebsite.com:80 我知道我可以使用Request.Url.AbsoluteUri来获得完整的URL,我知道我可以使用Request.Url.Authority来获取主机和端口,但我不知道最好的方式来获得协议而不parsing输出URLstring。 有什么build议么?
我已经在传统的ASP和ASP.NET中进行了编程,并且在服务器端代码的标记中看到了不同的标记。 我最近在MSDN上遇到了一个很好的博客,它介绍了以下两者之间的区别: <%= (连同等号的百分比)和 <%# (百分号和哈希/磅/八脚) ( <%#仅在数据绑定时计算, <%=在渲染时计算),但是我也看到: <%$ (百分比和美元符号)和 <%@ (百分号和符号)。 我相信<%@加载类似程序集的东西,也许<%$从configuration文件中加载东西? 我不太确定。 我只是想知道是否有人可以为我澄清这一切,并可能解释为什么创build如此多的不同的标签看起来有类似的目的是重要的?
有没有办法在.ASPX页面注释掉标记,以便它不交付给客户端? 我已经尝试了标准注释<!– –>但是这只是作为注释传递,并不阻止渲染的控制。
是否有可能转换下面的Web.config appSettings文件: <appSettings> <add key="developmentModeUserId" value="00297022" /> <add key="developmentMode" value="true" /> /* other settings here that should stay */ </appSettings> 成这样的东西: <appSettings> <add key="developmentMode" value="false" /> /* other settings here that should stay */ </appSettings> 所以,我需要删除关键的developmentModeUserId ,我需要replace关键的developmentMode的值。
Visual Studio 2010有一个“发布”命令,允许您将Web应用程序项目发布到文件系统位置。 我想在我的TeamCity构build服务器上执行此操作,所以我需要使用解决scheme运行器或msbuild执行此操作。 我尝试使用发布目标,但我认为这可能是ClickOnce: msbuild Project.csproj /t:Publish /p:Configuration=Deploy 我基本上想做一个web部署项目,但没有加载项。 我需要它来编译WAP,删除任何不必要的执行文件,执行任何web.config转换 ,并将输出复制到指定的位置。 我的解决scheme ,基于杰夫·斯维尔的答案 <Target Name="Deploy"> <MSBuild Projects="$(SolutionFile)" Properties="Configuration=$(Configuration);DeployOnBuild=true;DeployTarget=Package" ContinueOnError="false" /> <Exec Command=""$(ProjectPath)\obj\$(Configuration)\Package\$(ProjectName).deploy.cmd" /y /m:$(DeployServer) -enableRule:DoNotDeleteRule" ContinueOnError="false" /> </Target>
我有一些项目的解决scheme。 在不同的项目中有几个突破点。 我想跟踪第一个线程碰到这些断点之一,并继续跟踪那个单线程,尽pipe其他线程进入相同的代码块。 我知道这是可能的通过定义一个条件的断点,即线程名称= …或线程Id = …但我的情况是一个沉重的ASP.NET应用程序,只要我附加到w3wp.exe很multithreading都会打到断点。 我需要一些像ThreadLocal<break-point> 。 可能吗? 如果是这样,怎么样?
当我打开解决scheme时,我的解决scheme文件中有一个Web项目“不可用”。 当我右键单击Web项目并重新加载项目时,出现以下错误: The Web Application Project mycompany.myapp.mywebproject is configured to use IIS. The Web Server 'http://localhost/MyWebApp could not be found. 我没有为这个Web应用程序手动设置虚拟目录。 每个同事,Visual Studio应该提示我创build虚拟目录,但我没有得到提示。 在我的开发机器上安装IIS之前,我安装了VS2010。 这是我的开发机器设置: Windows 7企业版 Service Pack 1 64位操作系统 Visual Studio 2010企业服务包1 IIS版本7.5
我刚刚在网上读到了一个新发现的ASP.NET安全漏洞。 你可以在这里阅读细节。 问题在于ASP.NET实现AESencryptionalgorithm的方式,以保护这些应用程序在用户会话期间生成的用于存储信息的cookie的完整性。 这有些模糊,但是这是一个更可怕的部分: 攻击的第一阶段需要几千个请求,但一旦攻击成功,攻击者获得密钥,就完全隐身了。所需的密码知识是非常基础的。 总而言之,我对安全/密码学知之甚less,不知道这是否真的如此严重。 那么,所有的ASP.NET开发人员都应该担心这种技术可以在几秒钟内拥有任何ASP.NET网站 ? 这个问题如何影响一般的ASP.NET开发人员? 它会影响我们吗? 在现实生活中,这个漏洞有什么后果? 最后:是否有一些解决方法可以防止此漏洞? 感谢您的回答! 编辑:让我总结我得到的答复 所以这基本上是一种“填充甲骨文”式的攻击。 @Sri对这种types的攻击是什么意思提供了一个很好的解释。 这是一个令人震惊的video关于这个问题! 关于这个漏洞的严重性:是的,这确实是严重的。 它让攻击者了解应用程序的机器密钥。 因此,他可以做一些非常不想要的事情。 在应用程序的机器密钥的刺激下,攻击者可以解密authenticationcookie。 更糟的是,他可以用任何用户的名字来生成authenticationcookie 。 因此,他可以在网站上出现任何人。 该应用程序无法区分你或黑客谁产生身份validationcookie与你自己的名字。 它也可以让他解密(也生成) 会话cookie ,虽然这不像以前那样危险。 不太严重:他可以解密encryption的ViewState页面。 (如果您使用ViewState存储有信心的数据,那么不应该这样做!) 非常令人意想不到 :凭借机器密钥的知识,攻击者可以从您的Web应用程序下载任何任意文件,甚至那些通常无法下载的文件! (包括Web.Config等) 这里有一些我没有解决的问题,但有助于提高Web应用程序的安全性。 您可以使用受保护的configuration来encryption敏感数据 使用HTTP仅Cookie 防止DoS攻击 现在,我们来关注这个问题。 Scott Guthrie在他的博客上发表了一篇关于它的文章 ScottGu的关于漏洞的FAQ博客文章 ScottGu关于漏洞的更新 微软有一个关于它的安全公告 了解漏洞 有关该漏洞的其他信息 解决scheme 启用customErrors并创build一个所有错误都redirect到的错误页面。 是的, 即使是404s 。 (ScottGu说,区分404s和500s对于这种攻击是必不可less的。)另外,在你的Application_Error或Error.aspx放置一些随机延迟的代码。 (生成一个随机数字,并使用Thread.Sleep睡了这么长时间。)这将使攻击者无法确定您的服务器上发生了什么。 有些人build议切换回3DES。 从理论上说,如果你不使用AES,你不会遇到AES实现中的安全弱点。 事实certificate,这是不build议的 […]
有人可以请向我解释在.NET中的存储库模式,一步一步给出一个非常简单的例子或演示。 我知道这是一个很常见的问题,但至今我还没有find满意的答案。