gpt4 book ai didi

c# - 在iis中启用svg解压

转载 作者:行者123 更新时间:2023-11-30 22:34:27 25 4
gpt4 key购买 nike

我试图在 iis 中启用 SVGZ,但我遇到了一些麻烦。这就是我所做的:我向 iis 控制台添加了一个 svgz mime 类型并编译了一个 dll 来处理解压缩,我将其添加到“ISAPI 过滤器”控制台:

namespace svgzHandler
{
using System;
using System.Web;
public class svgzHandler : IHttpHandler
{
public bool IsReusable { get { return true; } }

public void ProcessRequest(HttpContext context)
{
HttpResponse r = context.Response;
r.ContentType = "image/svg+xml";
r.AppendHeader("Content-Encoding", "gzip");
r.WriteFile(context.Request.PhysicalPath);
}
}
}

但是好像还是不行……这段代码有没有错误?有什么我忘了吗?

这是我在浏览器中得到的错误:

This page contains the following errors:

error on line 1 at column 1: Encoding error
Below is a rendering of the page up to the first error.

谢谢你的帮助!

最佳答案

编辑: 错过了 SVGZ 位,所以这可能是您真正想要的 - http://forums.iis.net/p/1175276/1970786.aspx

好的,快速提问...

您是否考虑过通过 IIS 配置而不是 C#/.net 执行此操作?

在 applicationHost.config 中,您应该看到以下部分

    <httpCompression directory="%SystemDrive%\inetpub\temp\IIS Temporary Compressed Files">
<scheme name="gzip" dll="%Windir%\system32\inetsrv\gzip.dll" />
<staticTypes>
<add mimeType="text/*" enabled="true" />
<add mimeType="message/*" enabled="true" />
<add mimeType="application/javascript" enabled="true" />
<add mimeType="*/*" enabled="false" />
</staticTypes>
</httpCompression>

您可以添加以下内容:

            <add mimeType="image/svg+xml" enabled="true" />

您还需要确保在元素中设置了 .svg 的 mimetype

        <mimeMap fileExtension=".svg" mimeType="image/svg+xml" />

(这个配置不是从生产服务器复制的,所以不能完全确定它是正确的,但它是我为其他 mime 类型所做的)

关于c# - 在iis中启用svg解压,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7812701/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com