【问题标题】:IIS 7.5: How to let him serve by default all file extensions (without manually adding them)?IIS 7.5:如何让他默认提供所有文件扩展名(无需手动添加)?
【发布时间】:2011-07-18 10:37:24
【问题描述】:

每次当您在 IIS 7.5 支持的服务器上放置“新”文件扩展名以进行简单的 http 下载时,您都必须考虑将扩展名添加到 IIS 配置中,这有点烦人!

(例如,提供 .7z 格式的压缩文件)

有没有办法告诉 IIS“提供任何服务”(就像它是 Apache-Webserver 中的默认设置一样)?

谢谢

【问题讨论】:

    标签: iis iis-7 webserver file-extension


    【解决方案1】:

    您应该将以下内容添加到 MIME 类型:

    extension:  .*
    MIME type:  application/octet-stream
    

    之后(取决于浏览器)每个未知文件都将被强制下载。

    【讨论】:

    • 如果你的文件没有扩展名,那么使用.而不是.*来匹配它
    • @CarlosRendon 如果适合你,也许可以添加一个替代答案。
    【解决方案2】:

    您应该将以下内容添加到 MIME 类型:

    对于具有任何扩展名的文件(即 foo.somethingcrazyhere)

    extension: .* MIME type: application/octet-stream

    对于没有任何扩展名的文件(即 SOMETHING_CRAZY_HERE_NO_DOT)

    extension: . MIME type: application/octet-stream

    【讨论】:

      【解决方案3】:

      在您的 web.config 中尝试以下操作。这基本上告诉 IIS 忽略扩展白名单。

      <configuration>
        <system.webServer>
          <security>
            <requestFiltering>
              <fileExtensions allowUnlisted="true" />
            </requestFiltering>
          </security>
        </system.webServer>
      </configuration>
      

      【讨论】:

      • 这里 (iis.net/configreference/system.webserver/security/…) 说默认值为 true,所以我看不出这有什么改变。
      • 我在一家金融公司工作时写了这篇文章 - 他们在他们的网络服务器 VM 模板上部署了一个 machine.config,将其设置为 false,所以我没有意识到这一点。跨度>
      • 此解决方案不起作用...我正在尝试当前提供 .rdf
      猜你喜欢
      • 2013-11-25
      • 2019-04-07
      • 2013-02-01
      • 2012-10-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多