App_offline.htm,CSS,图像和aspnet_isapi.dll

时间:2009-10-21 16:45:45

标签: asp.net css isapi app-offline.htm

所以,我正在研究的网站是使用urlrewriting与aspnet_isapi.dll协调(一切都映射到它)。我提出了我的app_offline.htm文件,然后显示了所有文本,但是没有提供CSS或图像。由于通配符映射而不是IIS,我猜他们正在处理它们。它是否正确?如果是这样,我如何允许IIS提供这些文件?此外,我可以看到在web.config中出现的重写器设置问题:

<rewrite url="^~/images/network/(.*)/(.*).jpg$" to="~/services/ImageHandler.ashx?type=$1&amp;id=$2"/>
    <rewrite url="^~/image/view/(.*).jpg$" to="~/ServePRView.aspx?id=$1"/>
    <rewrite url="^~/asset/view/(.*).jpg$" to="~/services/ImageHandler.ashx?id=$1&amp;type=asset"/>

感谢大家的帮助, -Steve

2 个答案:

答案 0 :(得分:19)

这是因为如果网络服务器看到App_Offline.htm文件,它会为网站中的每个请求提供该文件 - 甚至是图像。您必须从其他网站提供图像。或者您可以尝试这样的http://en.wikipedia.org/wiki/Data_URI_scheme

答案 1 :(得分:1)

@JeremyWeir是对的。 IIS停止在app_offline.htm的前提下提供子资源。解决此问题的方法是使用以下内容直接在页面中嵌入内容:

1)Encode Images inside Html 2)Internal Style Sheets 3)你的javascript相同

这不是最容易维护的,但它可以让您控制页面上显示的内容的外观。