ASP.NET 404使用未知扩展名下载文件时



我有一个ASP.NET Web应用程序,允许用户从网站下载文件。该站点已经运行了几年,没有问题,但是今天,当试图下载带有" ERPT"one_answers" EDRW"的两个不同文件时,一位用户报告了404响应。这些是某种CAD设计文件。

在某些情况下,例如PDF文件,网站将在浏览器中打开该文件。但是对于大多数人来说,像zip文件一样,该站点将简单地提示用户下载位置并保存文件。我希望这两个文件的下载发生,但它正在返回404。如果将文件扩展名更改为txt,则下载无问题。

关于ERPT或EDRW文件扩展的独特之处,还是仅仅是未知的?

是否有工作,或者我可以将其他东西放在我的标签中?

目前,链接仅仅是这样:

<a href="files/File1.EPRT">Download File1.EPRT</a>

iis 7未返回未知文件类型。尝试将其添加到您的web.config

<configuration>
   <system.webServer>
      <staticContent>
         <mimeMap fileExtension=".ERPT" mimeType="application/octet-stream" />
         <mimeMap fileExtension=".EDRW" mimeType="application/octet-stream" />
      </staticContent>
   </system.webServer>
</configuration>

有关更多信息,请参见此处。

听起来像您的IIS丢失了MIME文件类型设置。

这是Microsoft Technet请求静态文件返回404错误(IIS 6.0)的摘录:

对于静态内容的请求,此版本的IIS服务请求 对于仅具有已知文件名扩展名的文件,该功能称为已知 扩展。如果向其文件名的资源提出了请求 扩展未映射到MIMEMAP METABase中的已知扩展 属性,IIS拒绝请求并记录404错误 W3C扩展日志文件中的3(404.3)的替代代码(由 默认)。

最新更新