我有一个现有的 IIS 应用程序,并且我正在尝试让 GZIP 服务器端压缩发挥作用。该应用程序在 EPIServer CMS 上运行(我对此不太熟悉) - 作为第一步,我认为这可能与 CMS 有关。
我决定创建一个新的 IIS 应用程序,这次使用 Umbraco(我非常熟悉的另一个 CMS) - 我创建了一个包含一些 CSS 文件和图像的基本页面,
Content-Encoding: gzip
标题。
这是我尝试过并检查过的。
- 在本地工作,我运行的是 Windows 10 和 IIS 10
- 我已在“Internet 信息服务”>“Windows 功能”中的“性能功能”下启用了动态内容压缩和静态内容压缩
- 对于 IIS 中本地设置的网站,我已确保压缩部分的“启用动态”和“静态”复选框均已勾选。
在我的网络配置文件中,我添加了这一行
<urlCompression doDynamicCompression="true" doStaticCompression="true" dynamicCompressionBeforeCache="false" />
当 Webconfig 有此行时,我会检查浏览器中的 header :
请求 header
Accept: text/css,*/*;q=0.1
Accept-Encoding: gzip, deflate
Accept-Language: en-US,en;q=0.9
Host: umbracotest.site
Proxy-Connection: keep-alive
Referer: http://umbracotest.site/
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/66.0.3359.117 Safari/537.36
响应 header
Accept-Ranges: bytes
Content-Type: text/css
Date: Tue, 01 May 2018 15:09:02 GMT
ETag: "03739d0e978d31:0"
Last-Modified: Tue, 19 Dec 2017 16:52:54 GMT
Transfer-Encoding: chunked
Vary: Accept-Encoding
如果我稍微更改一下 webconfig 行 -dynamicCompressionBeforeCache="false"为 true -然后我就会在浏览器中看到一大堆符号 - 这意味着什么吗?
如果我在 webconfig 中添加几行,如下所示:
<system.webServer> <httpCompression> <staticTypes> <add mimeType="text/*" enabled="true" /> <add mimeType="message/*" enabled="true" /> <add mimeType="application/javascript" enabled="true" /> <add mimeType="application/x-javascript" enabled="true" /> <add mimeType="image/jpeg" enabled="true" /> <add mimeType="image/png" enabled="true" /> <add mimeType="image/svg" enabled="true" /> <add mimeType="*/*" enabled="false" /> </staticTypes> <dynamicTypes> <add mimeType="text/*" enabled="true" /> <add mimeType="message/*" enabled="true" /> <add mimeType="application/javascript" enabled="true" /> <add mimeType="application/x-javascript" enabled="true" /> <add mimeType="image/jpeg" enabled="true" /> <add mimeType="*/*" enabled="false" /> </dynamicTypes> <scheme name="gzip" dll="%Windir%\system32\inetsrv\gzip.dll" dynamicCompressionLevel="8" /> </httpCompression> <urlCompression doDynamicCompression="true" doStaticCompression="true" dynamicCompressionBeforeCache="false" />
标题仍然相同。
- C:\inetpub\temp\IIS Temporary compressed Files\MYAPPPOOL-NAME <<此文件夹已创建,但为空。
这是一个 ASP.net MVC 应用程序 有什么想法吗?
最佳答案
所以,在我把头撞在墙上大约 8 个小时之后,我终于让它工作了!
在检查了所有内容两次,阅读了我能找到的有关该主题的所有帖子后,我发现了对类似问题的评论,表明这可能与我的防病毒软件有关。我在企业环境中工作,并且无权在本地计算机上禁用它。所以我将代码部署到我们的临时服务器......并且它有效。
因此,如果其他人遇到此问题,请尝试禁用您的防病毒软件,看看是否有任何区别,这对我有用。
关于iis - IIS 上的 Gzip 压缩 - 无法使其工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50119379/