我有一个自定义网站,我正在使用自定义引擎自动重写 url。只要页面 url 不以 .htm 或 .html 之类的结尾,重写就可以正常工作。对于这些页面,它直接进入 iis 404 页面,而不是先访问我的重写引擎。
我在该网站的 IIS6 配置的“主目录”部分有 * 通配符处理程序,但这些 url 似乎被它忽略了(尽管 css、jpg、js 等内容被发送到我的 web 中的 url 处理程序项目)。如何设置 IIS6 以强制将这些 url 发送到处理程序,同时在页面正常存在的情况下仍为页面提供服务?
处理程序基本上是这样做的
if (!File.Exists(Request.Path))
{
doMyRewriting();
}
我必须假设如果请求的文件不存在,则使用这样的块(例如,真正的块做一些其他的东西来格式化Request.Path以适合所有内容)应该运行“doMyRewriting()”它将正常提供页面。我弄错了吗?
如果我专门告诉 IIS 将 .htm 和 .html 页面通过 .NET 处理程序发送到 .NET 处理程序,则重写工作,但如果页面实际上在那里,它将不会提供它。
任何帮助将不胜感激。
提前致谢!