如果他通过IP地址进入我的网站,我正尝试使用路由将我的用户重定向到另一个网址。
或者如果可能的话请告诉我是否可以通过路由处理域名。因为我可以使用路由器控制器和操作,但是我可以在那里处理域吗?
我目前正在使用它,如下所示,但我无法处理域名:
routes.MapRoute(
"Controller",
"Controller/{action}/{id}",
new { controller = "Controller", action = "Index", id = UrlParameter.Optional });
答案 0 :(得分:3)
如果您使用的是 IIS 7 ,最好在网络服务器级别实施此功能。
这样,正确的状态代码将返回到HTTP标头中的浏览器,您的MVC应用程序可以处理自己的路由,而不必担心在大多数情况下是Web服务器工作的域和主机名。
要在IIS上实现此目的,请在IIS控制台中打开您的网站,然后选择URL Rewrite
并按照以下步骤操作:
xxx.xxx.xxx.xxx*
此方法将确保您的子目录已映射,并且您的站点保持搜索引擎友好,并生成正确的响应代码。
下面的屏幕截图显示了您的规则在IIS中的外观:
或者,如果您需要在应用范围内执行此操作,ASP.NET MVC Routing by Subdomain上的此问题可能会有用。