如何将ASP.NET MVC网站托管为子目录

问题描述

我有一个ASP.NET MVC网站,我想将其放置在现有Web域的子目录中。这样,URL将类似于www.existingsite.com/newsite/login,而不是www.newsite.com/login

我尝试将其添加RouteConfig.cs文件中,如下所示,但这根本不起作用。

public static void RegisterRoutes(RouteCollection routes)
{
        routes.IgnoreRoute("{resource}.axd/{*pathInfo}");

        routes.MapRoute(
            name: "Default",url: "NewSite/{controller}/{action}/{id}",defaults: new { controller = "Home",action = "Index",id = UrlParameter.Optional }
        );
}

此后,我进入了项目的属性,并将虚拟目录设置为localhost:port/NewSite。在我尝试使用用户信息解密cookie之前,这似乎一直有效。

解密会引发错误

在加密操作期间发生错误

它在此特定行上爆炸:

FormsAuthenticationTicket ticket = FormsAuthentication.Decrypt(cookie.Value);

是否可以在子目录中托管ASP.NET MVC网站,还是必须在根目录下?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)