IIS:内容类型未知的请求被拒绝

IIS:内容类型未知的请求被拒绝

我有一个运行 asp.net mvc 3 应用程序的 IIS7.5 框。该应用程序接收二进制 POST 请求并返回二进制答案。为了将此二进制数据与所有其他数据包区分开来,我设置了自己的 mime 类型(我们称之为应用程序/my.binary.data)我与内容类型標軸。

IIS 服务器似乎不喜欢我自己的 mime 类型,并使用400 错误请求。如果我将 mime-type 更改为应用程序/八位字节流它通过 IIS 并且我从我的应用程序获得答案。

如何设置 IIS 以允许我自己的请求 mime 类型?

请求数据包

POST http://my.local.domain/Page  HTTP/1.1
Host: my.local.domain
Content-Length: 33
Content-Type: application/my.binary.data
Cache-Control: no-cache

..............p.00000000000000...

响应包:

HTTP/1.1 400 Bad Request
Cache-Control: private
Content-Type: text/html
Server: Microsoft-IIS/7.5
X-AspNetMvc-Version: 3.0
X-AspNet-Version: 4.0.30319
X-Powered-By: ASP.NET
Date: Wed, 06 Jul 2011 08:11:27 GMT
Content-Length: 11

Bad Request

答案1

我终于能够按照以下指南解决问题http://www.donnfelker.com/aspnet-mvc-iis7-and-bad-request/

我将以下代码添加到我的 web.config

<system.webServer>
  <httpErrors errorMode=”Detailed” />
</system.webserver>

答案2

类似于这个博客的内容:http://blogs.iis.net/bills/archive/2008/03/25/how-to-add-mime-types-with-iis7-web-config.aspx可能会告诉你需要做什么。

它主要更新应用程序 web.config 中的静态内容设置,以便 IIS7.5 了解您自己的 mime 类型。

相关内容