我们正在尝试从MVC angularjs项目的网址中删除#。 我们按照以下步骤操作
添加$ locationProvider.html5Mode(true);在app.js中 在layout.cshtml中添加 完成这些更改后,我们可以从网址中删除#。 应用程序可以像SPA一样正常工作。但是当重新加载页面时会出现以下错误。
“ /”应用程序中的服务器错误 无法找到该资源。 HTTP404。要查找的资源(或其依赖项之一) 可能已被删除,更名或暂时不可用。 请检查以下URL,并确保其拼写正确。
为解决此问题,我们在web.config中添加了以下重写规则
这带来了too_many_redirects问题。
为此,我们在routeConfig.cs中添加了以下路由规则
routes.MapRoute(
name: "Default",
url: "{*url}",
defaults: new { controller = "Home", action = "Index" },
namespaces: new[] { "NetScribe.Web.Controllers" });
但这也无济于事。
请帮助您使用任何可行的方法来实现这一目标。