我试图使用IIS重写从我的ASP.net MVC 4应用到我的ASP.net MVC 4的WebAPI请求。 从客户端,我使用Ajax来拨打电话回我然后像服务器改写为指向的WebAPI网站请求的服务器。 这应该解决任何跨域的问题,如果我能得到它的工作。
我已经安装了URL重写,Web场框架,编曲,每本文外部高速缓存: http://blogs.iis.net/wonyoo/archive/2011/04/20/how-to-install-application-request-routing -arr-2-5-不-网络平台的安装程序,webpi.aspx
在IIS->应用程序请求路由 - >服务器代理设置”并检查说中的‘启用代理’。
我重写规则是这样的:
<rule name="webapi" stopProcessing =" true" >
< match url =" webapi/(.*)" />
< conditions>
< add input =" {HTTP_HOST}" pattern="web(\.mytest\.com)$" />
</ conditions>
< action type =" Rewrite" url= "http://api{C:1}/api/{R:1} " />
</ rule>
什么是真的很好奇,如果我删除ExtensionlessUrlHandlers在我的MVC网站的web.config文件,然后我重写完美的作品。 不幸的是,MVC路由休息和我的网站不再起作用。 如果把ExtensionlessUrlHandlers回来,重写失败,MVC路由按预期工作。
是否有解决这个问题的一个简单的方法?