2012-01-12 84 views
1

经过我的最初研究,为我的网站上的httpredirects选择最佳选项。我决定继续安装UrlRewrite 2.0 IIS7扩展。 (我用这个链接来设置一个规则"Url Rewrite by Scott Gu")一切都很好,与设置,并在我的配置文件中添加重写规则我有这样的后Url使用Asp.net 3.5 sp1重写2.0

<rewrite> 
     <rules> 
      <rule name="AddCameraRule" stopProcessing="true"> 
       <match url="http://localhost/App1/addSomething/" /> 
       <action type="Redirect" url="http://localhost/App2/addsomething.aspx" /> 
      </rule> 
     </rules> 
    </rewrite> 

,但我得到404错误,当我尝试访问网址http://localhost/App1/addSomething。我想我可能不得不在IIS7中添加通配符映射(因为这是一个无扩展名的url),但我仍然不确定它(因为它似乎已经有了集成管道n,我在集成管道中有我的应用程序),只是试了一下,但它仍然没有奏效。任何人都可以看到这是怎么回事。

+1

你看过路由与URL重写吗?路由可以说是一个更好的长期解决方案,而且更灵活 – Lloyd 2012-01-12 17:31:46

+0

是的。我也在我的网站中使用路由,但我不确定是否可以在其他应用程序中执行http重定向,因为它无法创建其他应用程序的实例。这是重定向到不同的应用程序/站点。我尝试在app1 web.config中添加一个路由,如“addsomething”映射到“〜/ app2/something.aspx”,我有一个指向app2的虚拟目录,但它给出了一个错误,无法实例化app2。你知道如何用路由做到这一点吗? – DotNetUser 2012-01-12 17:38:31

+0

使用redirect.aspx页面并传递参数,这样你可以更灵活 – Lloyd 2012-01-12 17:40:28

回答