- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
在 Firebug 中,请求 header 具有以下条目:
接受编码:gzip、deflate
但是没有:
内容编码:gzip
在响应 header 中。
无论我尝试过什么,按照SO和其他网站上的一些答案,似乎没有任何效果!静态文件和动态文件都没有被压缩,或者至少如果它们被压缩,则响应 header 中没有返回内容编码 - gzip 值。
这是我的 web.config 设置的示例:
<urlCompression doDynamicCompression="true" doStaticCompression="true" dynamicCompressionBeforeCache="true" />
<httpCompression directory="%SystemDrive%\inetpub\temp\IIS Temporary Compressed Files" minFileSizeForComp="150" staticCompressionIgnoreHitFrequency="true">
<remove name="gzip" />
<scheme name="gzip" dll="%Windir%\system32\inetsrv\gzip.dll" staticCompressionLevel="8" dynamicCompressionLevel="8" />
</httpCompression>
我忽略了点击频率staticCompressionIgnoreHitFrequency="true
"
我已经确认 IIS 实际上正在压缩我可以在以下位置看到的文件:
C:\inetpub\temp\IIS临时压缩文件
如此处指定:set up gzip in IIS 8 windows 8
我已确保在 Windows 功能 > Internet 信息服务 > WWW 服务 > 性能功能中启用静态和动态压缩
我也尝试过这个人的方法:
IIS 7.5 Compression creates compressed file but returns the non-compressed one
编辑1:
IIS版本是10,但我也在IIS 8.5上尝试过这个
编辑2:
我现在还尝试了在此链接中找到的各种配置文件: https://github.com/h5bp/server-configs-iis/它提供了一些看起来像“最佳实践”的 web.config 文件。
未解决
编辑3:
根据 @Nkosi 的输入,我创建了一个全新的 Asp.net MVC 应用程序,并使用我尝试过的所有这些选项对其进行配置。这是我从 Fiddler 获得的原始 header :
HTTP/1.1 200 OK
Transfer-Encoding: chunked
Content-Type: text/javascript; charset=UTF-8
Expires: Wed, 20 Jul 2016 18:22:47 GMT
Last-Modified: Wed, 20 Jul 2016 18:22:47 GMT
Server: Microsoft-HTTPAPI/2.0
Date: Wed, 20 Jul 2016 18:22:47 GMT
如您所见,没有内容编码:Gzip
未解决
编辑4:
我尝试过将代码添加到 Global.asax 部分中的 BeginRequest 事件的方法:https://stackoverflow.com/a/27185575/392591
未解决
编辑5:
所以我只是尝试根据以下答案启用跟踪:https://stackoverflow.com/a/33182525/392591
没有失败,但我确实注意到跟踪文件的底部有一个名为 GENERAL_RESPONSE_HEADERS 的部分,以下是它提供的内容:
Cache-Control: private
Content-Type: text/html; charset=utf-8
Content-Encoding: gzip
Server: Microsoft-IIS/10.0
X-AspNetMvc-Version: 5.2
X-AspNet-Version: 4.0.30319
X-Powered-By: My Little Pony
X-UA-Compatible: IE=Edge,chrome=1
这适用于每个静态类型文件。
但是我刚刚在跟踪文件中发现了以下内容:
8. STATIC_COMPRESSION_START 08:04:03.552
9. STATIC_COMPRESSION_NOT_SUCCESS Reason="NOT_FREQUENTLY_HIT" 08:04:03.552
10. STATIC_COMPRESSION_END 08:04:03.552
压缩未成功,原因是不频繁命中...奇怪,因为我确实将“忽略命中频率”选项设置为 true!
因此,我刚刚进入 IIS 管理器,并在服务器上将“忽略命中频率”设置为 true(即 applicationHost.config),并将跟踪文件输出更改为以下内容:
8. STATIC_COMPRESSION_START 08:19:17.489
9. STATIC_COMPRESSION_SUCCESS 08:19:17.489
10. STATIC_COMPRESSION_END 08:19:17.489
我返回并在 applicationHost.config 中将其关闭,然后又返回到静态压缩不成功,所以这肯定会产生影响。但是,当我查看 FireBug 时,它仍然传递未压缩的文件,并且没有 GZIP 内容编码响应 header 。
我在失败请求跟踪中注意到的另一个有趣的地方是最后两个整体 GENERAL_FLUSH_RESPONSE_END 和 GENERAL_REQUEST_END,它们都显示我的 Bootstrap.css 文件已发送 17903 字节(大约 18kb),与我在我的文件中看到的文件的压缩版本相匹配。 IIS 临时压缩文件文件夹。因此,该文件在物理上被压缩,并且根据失败的请求跟踪,它正在发送正确的内容...但随后浏览器会拾取完整的 117kb 文件?
未解决
最佳答案
我的 IIS 和 gzip 配置也有类似的情况
In Firebug the request header has the following entry: Accept-Encoding: gzip, deflate
But there's no: Content-Encoding: gzip In the Response Header.
就我而言,问题出在防病毒保护上。实际上应用了gzipping,但是启用了防病毒设置保护http连接(取决于具体程序),解压缩响应检查它,然后动态重写响应 header 。
注意:当某些代理/防病毒软件更改您的响应 header 时,这是一个关键属性,当 Content-Length
和 消失时Transfer-Encoding
添加了值 chunked。
关于asp.net - IIS 应用程序在响应 header 中缺少内容编码 - gzip,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38250376/
我对自定义 CSS 或在将图像作为 Logo 上传到页面时使用编码 block 有疑问。我正在为我的网站使用 squarespace,我需要帮助编码我的 Logo 以使其适合每个页面。一个选项是使用自
如 encoding/json 包文档中所述, Marshal traverses the value v recursively. If an encountered value implement
我必须做一些相当于Java中的iconv -f utf8 -t sjisMS $INPUT_FILE的事情。该命令在 Unix 中 我在java中没有找到任何带有sjisMS的编码。 Java中有Sh
从 PHP 5.3 迁移到 PHP 5.6 后,我遇到了编码问题。我的 MySQL 数据库是 latin1,我的 PHP 文件是 windows-1251。现在一切都显示为“ñëåäíèòå àäðå
我有一个 RScript文件(我们称之为 main.r ),它引用了另一个文件,使用以下代码: source("functions.R") 但是,当我运行 RScript 文件时,它提示以下错误:
我无法设法从 WSDL 创建 RPC/编码风格的代码 - 有谁知道哪个框架可以做到这一点? 带有 adb 和 xmlbeans 映射的 Axis2 无法正常工作(无法处理响应中的肥皂编码)直接使用 X
安装了最新版本的Node.Js()和npm包**(1.2.10)**当我运行 Express 命令来生成项目时,它向我抛出以下错误 buffer.js:240 switch (encoding &
JavaScript中有JSON编码/解码base64编码/解码函数吗? 最佳答案 是的,btoa() 和 atob() 在某些浏览器中可以工作: var enc = btoa("this is so
>>> unicode('восстановление информации', 'utf-16') Traceback (most recent call last): File "", line
我当然熟悉 java.net.URLEncoder 和 java.net.URLDecoder 类。但是,我只需要 HTML 样式的编码。 (我不想将 ' ' 替换为 '+' 等)。我不知道任何只做
有一个非常简单的 SSIS 包: OLE DB Source 通过 View 获取数据(数据库表 nvarchar 或 nchar 中的所有字符串列)。 派生列,用于格式化现有日期并将其添加到数据集(
我正在使用一个在 Node 中进行base64编码的软件,如下所示: const enc = new Buffer('test', 'base64') console.log(enc) 显示: 我正
前言 下文介绍的自定义协议仅作为学习示例,纯粹是玩具项目,没有实际可用性。无需过度关注和讨论其合理性 进行通信的双方是谁? 常见的模型 客户端-服务器,例如HTTP协议,浏览器<=>
我试图将带有日语字符的数据插入到 oracle 数据库中。事情是保存在数据库中的是一堆倒置的问号。我该如何解决这个问题 最佳答案 见 http://www.errcode.net/blogs/?p=6
当我在 java 中解压 zip 文件时,我发现文件名中出现了带有重音字符的奇怪行为。 西索: Add File user : L'equipe Technique -- Folder : spec
在网上冲浪我找到了 ExtJS 的 Ext.Gantt 插件,该扩展有一个特殊的编码。任何人都知道如何编码那样或其他复杂的形式。 Encoded Gantt Chart 最佳答案 它似乎被 Dean
我正在用C语言做一个编码任务,我进展顺利,直到读取符号并根据表格分配相应的代码的部分。我必须连接几个代码,直到它们的长度达到 32 位,为此我必须将它们写入一个文件中。这种写入文件的方法给我带来了很多
我有一个外部链接的 javascript 文件。在那个 javascript 里面,我有这个功能: function getMonthNumber(monthName){ monthName = mo
使用mechanize,我检索到一个网页的源页面,其中包含一些非ASCII字符,比如汉字。 代码如下: #using python2.6 from mechanize import Browser b
我有一个包含字母 ø 的文件。当我用这段代码 File.ReadLines(filePath) 读取它时,我得到了一个问号而不是它。 当我像这样添加编码时 File.ReadLines(filePat
我是一名优秀的程序员,十分优秀!