IIS ASP 集成管道模式在 URL 以"static"文件名结尾时未调用正确的模块



我有一个模块,作为一个"代理"。它需要解决一些跨域脚本问题,我有。因此,服务器将获取外部内容并将其返回给客户端,并且客户端仍在同一域内。

我的问题是,当url末尾有一个"静态文件"名称时,我的处理程序没有被调用…下面是一个例子:

 http://my.url.com/myproxy.ashx/site1/getsomestuff.aspx?parm1=value1

我得到一个HTTP错误404文件不找到url myproxy.ashx/site1/getsomestuff.aspx

但是,如果我修改了上面的URL,使URL末尾没有带点的文件名,就像这样:

 http://my.url.com/myproxy.ashx/site1/getsomestuff_aspx?parm1=value1

myproxy的处理程序。调用Ashx。如果我放入一些组装代码将getsomestuff_aspx更改为getsomestuff。当我生成实际查询的URL时-我已经让它工作了。但我很确定,特别是集成管道模式,我应该能够在某处说,如果URL有"我的代理。在它的某个地方,然后调用我的处理程序模块…有人能给我指个方向吗?

我想我明白了:在系统内部增加了以下内容。web.config的webServer节点:

 <handlers>   <add name="ProxyAll" preCondition="integratedMode" verb="GET,POST" path="myproxy.ashx*" type="MyNameSpace.MyProxy"/> </handlers>

myproxy后的*。ashx将匹配所有的url,即使在最后有静态文件名。

最新更新