0

我有一个 HttpModule 显示遵循特定 URL 模式的图像。例如,/images/employees/jason.jpg 由模块处理,但所有其他图像不是。它在我的本地机器(Cassini 和 IIS 7)上运行良好。但是,IIS6 生产服务器不工作。我让托管公司将图像映射到 ASP.NET 工作进程。现在,除了应该由模块渲染的图像之外,所有图像都显示它们无法渲染。他们工作正常。

我在其中一个文件上运行了一个 HttpWatch 实例并收到以下错误:

ERROR_HTTP_INVALID_SERVER_RESPONSE

有任何想法吗?

4

3 回答 3

1

最终答案:

  1. 该模块需要更新以传输服务器文件。因此,我在原始 if 中添加了 else 并检查它是否是图像类型(通过使用实用程序方法),然后使用 Response.TransmitFile() 将文件传递给浏览器。

  2. 然后我遇到了图像的间距问题。这是因为我忘记了我已将 .aspx 文件注册为图像类型来执行测试。因此,每个页面都会在调试过程中崩溃或添加从 CSS 建立的填充。嗬!

现在一切都很美好。谢谢大家!

于 2009-05-01T19:29:59.287 回答
0

您的模块似乎没有什么特别的问题,所以问题一定来自其他地方。您是否有可能阻止图像的安全性?当您请求静态文件时,实际返回了什么?

我建议使用诸如 firebug 之类的东西查看返回的内容(及其标头),以检查响应代码、内容类型、实际原始响应等内容……

于 2009-05-01T05:04:41.800 回答
0

检查您的 web.config IIS6 / IIS7 有不同的位置来添加模块,这取决于您的 IIS7 运行的模式。

http://arcware.net/use-a-single-web-config-for-iis6-and-iis7

于 2009-05-01T05:13:28.987 回答