我有一个页面作为我的IIS 7(ASP.NET)网站的一部分,该网站提供来自数据库的图像。它使用查询字符串来选择图像并相应地设置内容类型标题(image / jpeg),以便例如image.aspx?ID = 1234将在浏览器中显示为jpeg图像。
我想做的是提供一个以像image / 1234.jpg这样的方式形成的URI,它会产生相同的结果。换句话说,名为1234.jpg的服务器上没有实际文件,它只是数据库记录的内容,但从浏览器的角度来看,它看起来好像有这样的文件。
我确信这是可能的,但我无法弄清楚它是如何完成的,或者在哪里寻找答案。我认为可以使用ISAPI过滤器完成,但我没有找到可访问的文档路径,以了解这是否是解决方案的正确基础。
答案 0 :(得分:0)
这里最好的选择可能是实施将image/1234.jpg
更改为image.aspx?ID=1234
的网址重写规则
您可以找到有关IIS here的网址重写的更多信息。
如果由于某种原因,URL重写不是您的选项,那么另一种可能的方法可能是实现自定义404页面。当您对image / 1234.jpg的请求不会产生真实文件时,它最终会在那里结束。
您应该能够在该点检测到URI并提供图像。