【问题标题】:Url Rewrite: Should www re-writing be in the app or the web server?网址重写:www 重写应该在应用程序中还是 Web 服务器中?
【发布时间】:2012-11-30 21:54:31
【问题描述】:

我必须重定向非 www 网址才能使用 www。我可以选择在 IIS 7 中执行此操作,或者在我的 ASP.Net 应用程序中编写此逻辑。

就可移植性而言,我认为在应用程序本身中编写它可能会更好。

是否有实现此目的的首选方法或只是偏好?

【问题讨论】:

    标签: asp.net url-rewriting iis-7.5


    【解决方案1】:

    当您在 IIS7 中执行此操作时,它所做的只是为您修改 Web.Config 文件。我会说那是传统的做事方式。

    http://www.iis.net/learn/extensions/url-rewrite-module/creating-rewrite-rules-for-the-url-rewrite-module

    【讨论】:

    • 天哪,真不敢相信我竟然忘记了,当然,谢谢。
    【解决方案2】:

    我认为,在应用程序中这样做更合理。例如,我们这样定义它:

        public static void RegisterRoutes(RouteCollection routes)
        {
            routes.IgnoreRoute("{resource}.axd/{*pathInfo}");
    
            routes.MapRoute(
                "User", // Route name
                "u/{user}/{controller}/{action}/{id}", // URL with parameters
                new { controller = "Home", action = "Index", id = UrlParameter.Optional } // Parameter defaults
                );
    
            routes.MapRoute(
                "Default", // Route name
                "{controller}/{action}/{id}", // URL with parameters
                new { controller = "Home", action = "Index", id = UrlParameter.Optional } // Parameter defaults
            );
    
        }
    

    因此我们有足够的灵活性,并且可以在我们的链接中使用特定的标记,等等。然而,如果不需要,我们将使用 IIS 基础。所以,我猜 - 无论在这里让你的泡菜发痒:)

    【讨论】:

      猜你喜欢
      • 2010-12-29
      • 2021-11-18
      • 2013-09-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多