我在默认站点(www.mysite.com)上托管了我的应用程序,并且我在默认站点(www.mysite.com/car,www.mysite.com/bike和www.mysite.com/ship)下创建了一些Web应用程序。 。我已经为我的默认网站编写了URL重写规则,以便从我的子应用程序(www.mysite.com/ship)中提供,如下图所示(http://i64.tinypic.com/7319xi.png),
image http://i64.tinypic.com/7319xi.png
But, now the problem was my other sub applications not loading. How can I exclude my sub applications(www.mysite.com/bike) using URL rewrite rule?
规则的问题在下面你的规则匹配所有情况因为模式是(。),所以如果有人进入url mysite.com/bike/somehting或mysite.com/car/somehting那么。与自行车或汽车匹配,并重写为mysite.com/ship/bike/somehting或mysite.com/ship/car/somehting。
您需要根据您的具体要求微调规则。例如,如果你想重写或重定向所有在主机名之后没有附带任何请求的请求,那么将模式设置为^ $匹配为空或什么都没有,这将是url的类似于mysite.com并选择重写选项作为重定向和客户端将重定向到mysite.com/ship
2)或者在条件允许的情况下你可以添加像REQUEST_URI这样的东西不匹配汽车/.*和REQUEST_URI不匹配自行车/.*这将确保它适用于所有其他不带汽车或自行车的网址并将添加在重写时发送到该URL
很多方法可以解决这个问题。一种快捷的方法是打开汽车/自行车/船舶应用程序的URL重写配置,并禁用/删除该级别的规则。 IIS管理器 - >站点 - >默认网站 - >自行车。打开URL重写功能,选择规则,然后单击删除。