什么是优化运行IIS7的Windows Server 2008盒子的最佳方法,使其只提供静态文件?
我想让我们的Web应用程序从运行Windows Server 2008和IIS7的静态文件服务器中汲取静态内容(CSS,JS,图像). 为此目的,您将对服务器进行哪种优化? (machine.config更改?web.config更改?特殊IIS7设置或模块?什么?) 解决方案 一些建议: 启用gzip压缩: http://blogs.msdn.com/vivekkum/archive/2009/02/02/18/http-compression-in-http-compression-in-iis-iis-6-and-iis-7-- -Service-account.aspx 设置高速缓存控制:Max-age至31536000(1年). code.google.com会告诉您为什么 - > http://consultingblogs.emc.com/jonathangeorge/jonathangeorge/archive/2009/09/09/how-t
4 2023-12-08
编程技术问答社区
<webopt:BundleReference>将ScriptBundle渲染成css链接元素
我正在尝试使用新的.NET 4.5 WebForms控件来渲染我的Materpage.我在Bundleconfig.cs中有一个脚本键: bundles.Add(new ScriptBundle("~/bundles/app").Include( "~/Scripts/underscore.js", "~/Scripts/backbone.js", "~/Scripts/app/app.js", "~/Scripts/app.validator.js", "~/Scripts/app/views/home.js", "~/Scripts/app/views/about.js", "~/Scripts/app/views/contact.js", "~/Scripts/app/controls/hello.js", "~/Scripts/app/init.js")); 然后,我尝试使用新的
10 2023-11-30
编程技术问答社区
在WebForms中使用捆绑文件,即使在调试模式下也会输出已压缩/合并的文件
我已经创建了一包各种脚本文件,这些文件我想将其组合在一起/缩小.在文件后面的代码中(是的,对不起,它是在VB中!)我将其添加到上的 上 Me.PlhHeader.Controls.Add(New LiteralControl(Scripts.Render("~/bundles/main").ToHtmlString())) 这将起作用,但是即使在web.config中debug="true" 中,它似乎总是输出压缩的缩小版本. 无论如何,这就是输出: 在调试模式下,我需要做些什么才能使此输出单个未压缩文件? 编辑 我还尝试了手动设置选项BundleTable.EnableOptimizations = false,并且它仍然输出单个缩小脚本标签.我没有想法. 最终编辑 我正在做一些与一些相关代码的非常愚蠢的事情,但是从技
2 2023-11-30
编程技术问答社区
谷歌网络优化器-距离胜利的组合还有多长时间?
我已经在 Google Web Optimizer 中进行了六个星期的A/B测试,但仍然没有目光. Google仍在说:"我们还没有收集足够的数据来显示出任何重要的结果.当我们收集更多数据时,我们应该能够向您展示获胜的组合." 有什么方法可以告诉Google下定决心有多近? (有人知道它使用什么算法来决定是否有"高信心赢家"?) 根据Google帮助文档: 有时我们只需要更多数据来 能够达到高水平 信心.测试的组合 通常需要大约200个转换 让我们判断它的表现 确定性. 但是我们所有的转换目前都有200多个对话: 230/4061(原始) 223/3937(变体1) 205/3984(变体2) 205/4007(变体3) 必须运行多长时间? 感谢您的任何帮助. 解决方案 有什么方法可以告诉Google下定决心有多近? 您可以使用GWO计算器来帮助确定基于您提供的许多假设的测试需要多长时间.请记住,尽管您的测试组合之间可能没
4 2023-11-29
编程技术问答社区
在代码中设置远期过期标题-ASP.NET
有没有一种方法可以通过ASP.NET编程设置代码中的Expires Expires?具体而言,我需要将其设置在整个文件夹和所有子文件夹上,并且该文件夹仅包含静态文件(JavaScript,CSS,图像等),而不是ASPX文件,因此我不能只在ASPX代码中添加一些代码-behind page_load. 我通常可以在IIS中直接设置此设置.但是服务器被客户端锁定(我只能访问用于部署的Web应用程序目录),并且让客户在IIS上设置有效期的标题将占据冰河时代(这是一个公共部门/政府网站)./p> 根据Yahoo的建议,我是出于前端优化原因而这样做的 http:http:http:http:http:http:http:http:http:http:http://developer.yahoo.com/performance/rules.html#expires 更新:我尝试过创建一个httpmodule ... public class FarFutureExpiresMo
10 2023-05-12
编程技术问答社区
在nuget软件包上的 "定位的装配'清单定义不符合装配参考"。
所以我在系统上持续遇到此错误. 无法加载文件或汇编'System.Web.Optimization'或其依赖项之一.位置的组件的清单定义与汇编引用不符. (Hresult的例外:0x80131040) 解决方案 我终于在尝试了大量尝试后找到了解决方案. 钥匙在装配负载跟踪中. LOG: Redirect found in application configuration file: 1.0.0.0 redirected to 1.1.0.0. 这是我解决问题的步骤.可能会跳过其中的一些,但这对我有用: 卸载Nuget软件包 Microsoft.AspNet.WebOptimization.WebForms 删除bin文件夹 打开web.config并找到重定向. 它看起来像这样:
26 2023-04-30
编程技术问答社区
如何在CSS中使用3位数的颜色代码而不是6位数的颜色代码?
我最近浏览了我的CSS文件,并将所有六位数的十六进制代码切换到简单的三位数代码(例如,我的#FDFEFF被缩短为#FFF). 它的颜色几乎与以前几乎完全相同,在我看来,中间部分相当无用,并且将它们删除为我的CSS文件中节省了整个300个字节. 您使用哪个版本有关系吗?我很少跨越仅使用三位数代码的网站(或者我想我从来没有跨过这样做).在六位数代码上使用三位数代码仍然是完全有效的,还是我们应该使用完整的六位数代码? 解决方案 三位数代码是速记,#123与#112233相同.在您给出的示例中,您(有效地)已交换了#FDFEFF #FFFFFF,它接近原始颜色,但显然不准确. 这样,您使用哪个版本并不重要,但是三位数的颜色代码意味着您在阴影方面的选择较少.如果您觉得保存300个字节是值得的,那么继续使用三位数代码,但是除非您正在设计低频带宽度的情况,否则这300个字节并不会真正为您节省很多. 其他解决方案 速记很烂!不要使用它.维护和创造不必要的变化很难,例如在
84 2023-03-18
编程技术问答社区
带或不带虚拟目录的CssRewriteUrlTransform
我们正在使用网站中的MVC捆绑,CssRewriteUrlTransform确保图像URL从动态捆绑CSS文件中工作. 但这仅在不使用虚拟目录时起作用,即 http://localhost/VirttualDir不起作用,但http://localhost/确实如此.这是因为在重写URL时,CssRewriteUrlTransform tranform不会考虑虚拟文件夹.因此,如果图像真实路径为localhost/vdir/content/img/foo.png它将将其重写为localhost/content/img/foo.png,这是错误的 解决方案 我不确定会完全理解您的问题,但是在这里看到http://localhost似乎是错误的.您绝对不应将绝对URL用于捆绑. 对我而言,CSSsrewriteUrlTransform的工作原理非常完美,这是我的使用方式: bundles.Add(new StyleBundle("~/bundles/css")
22 2023-02-06
编程技术问答社区
有什么方法可以在运行时动态更新asp.net mvc bundle的内容吗?
我是我的应用程序的asp.net mvc v4,我正在使用Web优化功能(划线和脚本和样式的划线). 现在,我理解的是(如果是错误,请纠正我),优化框架将在编译时查看附带的文件并配置它们.它将根据内容创建一个版本号(v =东西).每次内容更改,它都会重新创建版本哈希,客户端将获得更新的文件. 现在,有没有办法得到以下完成 [1]更新我的服务器中的JS文件中的内容,并在不重新构建和重新启动应用程序的情况下为客户端提供更新的内容(我在此处不改变捆绑配置,只需更新文件内容脚本)? [2]更新脚本配置本身(例如,将新脚本添加到捆绑包),并将其用于客户端,而无需重新编译并重新拔读该应用程序?或者,至少没有重新编译? (我知道,一般来说,我们在CS文件内定义了捆绑包,但是想知道是否有出路!) [3]有没有办法使用我自己的版本号(从配置文件,v = mycustomscriptversion)而不是自动生成的版本哈希? 解决方案 这有点迟到,但我只是在这里分享我自
在使用ASP.NET Web优化和BundleTransformer的CSS捆绑中,如何正确使用IItemTransform来纠正路径?
我现在正在研究一个使用库的项目(v 1.1 .0-beta1)与捆绑变换器扩展(核心为1.7 .0-beta1的少量)用于将更少转换为CSS. 基于Web搜索CSS(且更少)中的路径似乎是一个常见问题,在大多数情况下,建议使用它手动修改CSS并使用它完成.但是,由于我们的开发和生产环境之间的差异,而不是拥有受影响的CSS这样的解决方案是不可行的. 两个解决方案似乎存在.第一个是覆盖捆绑在包含内容的实际目录上定义的虚拟目录.对我来说,这似乎是一个糟糕的选择. 其次,我选择的路线是使用IItemTransform,例如CssRewriteUrlTransform(在这篇文章中.即使这个解决方案也有它 limitations .我试图写作我自己的ItemTransformer,但似乎在以下列方式使用时忽略了它的执行结果: public static void RegisterBundles(BundleCollection bundles) { /* among ot
在Firefox 3中,JavaScript被异步加载(根据Firebug)?
我正在尝试介绍我相当自信的网站的性能,因为该网站在页面上加载JavaScript文件会放慢速度. 页面上几次包含相同的JavaScript文件,标签散布在整个页面中,而不是在底部包含. 正如我所怀疑的那样,在查看Firebug的" Net"选项卡时,大多数时间(不是全部)加载JavaScript时,没有要求其他文件.浏览器等待JavaScript完成加载. 但是有一些例外.在某些情况下,JavaScript被加载,但同时,其他资源似乎已加载,例如其他JavaScript文件和图像. 我一直认为JavaScript会阻止页面上其他资源的加载.我认为这是不正确的,还是这种行为因浏览器或浏览器版本而有所不同吗? 更新: 对于那些解释了加载脚本如何阻止其他资源的加载的人,我已经意识到这一点.我的问题是为什么脚本不会阻止其他资源的加载. Firebug表明某些JavaScript文件不块加载其他资源.我想知道为什么会发生这种情况. 解决方案
8 2023-01-23
编程技术问答社区
CssRewriteUrlTransform没有被调用
我刚刚在VS 2013 RTM上创建了一个新的MVC 5应用程序. 有关某种原因,我CSS文件中的背景图像URL不会被转换. 所以,要调试问题,我创建了我的自定义CSSrewriteUrltransform包装器. 我发现我的断点没有被调用. 这就是我在我的bundleconfig.cs中拥有的东西 using System.Web.Optimization; namespace Utilities.Web { public class BundleConfig { private const string JQUERY_CDN_URL = "//code.jquery.com/jquery-1.10.1.min.js"; public static void RegisterBundles(BundleCollection bundles) { bundles.UseCdn =
62 2023-01-17
编程技术问答社区
MVC捆绑-包括单个捆绑的.min文件
我在我的应用程序中有一个文件,我只有一个缩小版本,我想为它创建一个捆绑包: bundles.Add(new ScriptBundle("~/bundles/maskedinput").Include( "~/Scripts/jquery.maskedinput-1.3.min.js")); 问题是,默认在调试模式下,捆绑机制忽略了.min文件.我不想为所有捆绑包关闭此规则,但我想禁用此单个捆绑包.这可能吗? 解决方案 快速修复是重命名js文件取出.min.或者根据此链接中的解决方案,您可以创建自己的忽略模式. https://stackoverflow.com/a/12005272/1593273 其他解决方案 这也固定在1.1-alpha1版本中,因此如果您更新到该版本,则在显式包含文件时,您将不再看到此行为. 其他解决方案 您可以在没有.min的情况下重命名文件,或者您可以复制文件以具有.min和一个没有.这只是他们现在都是一样的.
22 2023-01-17
编程技术问答社区
CssRewriteUrlTransform不采取
bundles.Add(new StyleBundle("~/a/b/c") .Include("~/Content/font-awesome.css", new CssRewriteUrlTransform())); 我有这个捆绑.字体 - 令人敬畏的CSS具有定义为url('../fonts/fontawesome-webfont.eot?v=4.0.3')的URL,当CSS位于"~/Content/font-awesome.css"下方但现在它位于"〜/a/a/b">下 但CssRewriteUrlTransform不掌握并重写url('../../fonts/fontawesome-webfont.eot?v=4.0.3') 的路径 更新:如果我删除.min文件它CssRewriteUrlTransform开始工作,Web优化中的错误? https://aspnetoptimization.codeplex.com/workitem/166 解决方案
32 2023-01-15
编程技术问答社区
ASP.NET捆绑在普通html中?
我的Angular应用程序由ASP.NET WEPAPI备份,在那里我正在申请index.html和Angular处理来自那里的一切.我想用捆绑,但我看不出我怎么做到这一点.我必须使用剃刀(或WebForms)只是为了引用捆绑包吗?或者有没有选项可以为捆绑输出输出我可以在我的SRC/HREF中引用的固定名称? 要澄清,我不使用MVC或WebForms来提供HTML.您刚刚被重定向到index.html,路由是所有客户端.我的捆绑配置是使用webactivator.postapplicationstartmethod完成的. 解决方案 首先,只能回答问题,您可以在HTML文件中使用普通链接 =>将包含您的JavaScript包进入页面 您将使用此方法的问题是,如果修改捆绑包中包含的
18 2022-12-31
编程技术问答社区
在网页上混合使用安全和非安全的内容--这是个好主意吗?
我正在尝试想办法加快我的安全网站.由于需要加载大量 CSS 图像,因此会降低网站速度,因为浏览器不会将安全资源缓存到磁盘上,并且必须比实际需要更频繁地检索. 我正在考虑的一件事可能是将基于样式的图像和 javascript 库移动到不安全的子域,以便浏览器可以缓存这些不会造成安全风险的资源(渐变并不完全敏感材料). 我想看看其他人对做这样的事情有什么想法.这是一个可行的想法还是我应该以其他方式优化我的网站,例如使用 CSS sprite-maps 等以减少请求和带宽? 解决方案 浏览器(尤其是 IE)对此感到不安,并提醒用户页面上有混合内容.我们试过了,有几个用户打电话来质疑我们网站的安全性.我不会推荐它.让用户在使用您的网站时失去安全感是不值得的.
130 2022-08-15
编程技术问答社区
如何在CSS中使用3位数的颜色代码而不是6位数的颜色代码?
我最近浏览了我的 CSS 文件并将所有 6 位十六进制代码转换为简单的 3 位代码(例如,我的 #FDFEFF 缩短为 #FFF).它呈现几乎与以前完全相同的颜色,在我看来,中间部分相当无用,删除它们在我的 CSS 文件中节省了整整 300 个字节. 你使用哪个版本有关系吗?我很少遇到只使用 3 位数代码的网站(或者我想我从来没有遇到过使用 3 位数代码的网站).使用 3 位数代码而不是 6 位数代码是否仍然完全有效,还是应该使用完整的 6 位数代码? 解决方案 3位代码为简写,#123与#112233相同.在您给出的示例中,您已经(有效地)将 #FDFEFF 换成了 #FFFFFF,它接近原始颜色但显然不准确. 因此,您使用哪个版本并不“重要",但是 3 位颜色代码意味着您在色调方面的选择会少一些.如果您认为节省 300 字节是值得的,那么请继续使用 3 位代码,但除非您针对低带宽情况进行设计,否则这 300 字节不会真正为您节省那么多.
1516 2022-07-17
编程技术问答社区