如何从 Core 2 中的 URL 中删除共享主机文件夹名称 ASP.NET



我有一个用于学习 .NET Core 2 的网站 (http://jsoncore.net(,我想从添加到链接和源的 URL 中删除共享主机文件夹名称。例如,我添加了一个像这样的Html.ActionLink:

@Html.ActionLink(page.NavTitle, page.Slug, "Home")

系统将其写入:

<a href="/jsoncore/blog">Blog</a>

我想从链接 URL 中删除"/jsoncore",以便它看起来像这样:

<a href="/blog">Blog</a>

以下是 Startup.cs 中定义的路由:

app.UseMvc(routes =>
        {
            routes.MapRoute(
            "AdminController",
            "Admin/{action}",
            new { controller = "Admin", action = "Index"}
        );
            routes.MapRoute(
            "BlogController-BlogHome",
            "Blog/",
            new { controller = "Blog", action = "Index" }
        );
            routes.MapRoute(
                "BlogController-Post",
                "Post/{id}",
                new { controller = "Blog", action = "Post", id = "" }
            );
            routes.MapRoute(
                "BlogController-Post-Tag",
                "Blog/Tag/{id}",
                new { controller = "Blog", action = "Tag", id = "" }
            );
            routes.MapRoute(
                "BlogController-Post-Category",
                "Blog/Category/{id}",
                new { controller = "Blog", action = "Category", id = "" }
                );

                routes.MapRoute(
                "HomeController",
                "{action}/{id}",
                new { controller = "Home", action = "Index", id = "id?" }
            );
            routes.MapRoute("AccountController", "Login", new { controller = "Account", action = "Login"});
            routes.MapRoute("page", "{id}", new { controller = "Home", action = "Page", url = "" });

            routes.MapRoute(
                name: "default",
                template: "{controller=Home}/{action=Index}/{id?}");
        });

如果站点托管在虚拟目录中/jsoncore/则无法将其从URL中删除,因为它实际上是URL的一部分,即您需要它才能到达正确的位置。否则,请求将命中托管在 http://jsoncore.net 的站点,这不是此应用程序。它被称为通用资源定位器是有原因的。显然,只有正确的 URL 才能工作,其中包括/jsoncore/部分。

一些共享主机允许您绑定到域或子域(尽管可能会收取额外费用(。如果可用,那将是你最好的选择。然后,您可以有效地将站点托管在该域/子域的根目录中,而无需路径前缀。

最新更新