我正在尝试将 Piranha CMS (v2.2.0) 与现有的 ASP.NET MVC 应用程序集成。我可以运行所有原始应用程序页面和 CMS 管理器页面。我还可以查看由 CMS 管理的页面草稿,但是当我尝试查看从 CMS 托管的实时页面版本时,我收到 HTTP 404“找不到资源”消息。
所以以下草稿网址有效:
http://localhost:5316/draft/start
但以下实时网址失败:
http://localhost:5316/home/start
原始应用程序确实有一个“Home”控制器,我曾尝试将其重命名为“Test”,以防出现冲突问题。我可以看到新的“测试”内容,但 /home/start url 仍然失败。
按照建议,我的 RouteConfig 代码是:
routes.MapRoute(
name: "Default",
url: "{controller}/{action}/{id}",
defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional },
namespaces: new[] { "Maps.Portal.Controllers" }
).DataTokens["UseNamespaceFallback"] = false;
我的 web.config 设置是:
<settings>
<managerNamespaces value="" />
<disableManager value="false" />
<passiveMode value="true" />
<prefixlessPermalinks value="false" />
</settings>
我尝试将 prefixlessPermalinks 设置设置为 true,但这没有帮助。
我猜 Piranha CMS 没有捕捉到自己托管的页面的路由?有任何想法吗?