【发布时间】:2018-04-30 11:40:02
【问题描述】:
我正在寻找最好的(或非常好的)“Kentico 方式”来完成在内容树中包含多个 404 Not Found 页面,每个页面用于内容树的不同区域。
例如,假设以下带有博客项目和合作伙伴资料的假设内容树结构,
% Root Master
|__ Home
|__ Blog ._ Blog Item A
|_ Blog Item B
|_ Blog Item C
|_ 404 Page for Blogs
|__ Policy
|__ Partners ._ Partner Profile A
|_ Partner Profile B
|_ Partner Profile C
|_ 404 Page for Partners
|_ Site 404 Page
我正在寻找以下行为:
- 如果用户访问一个不存在的博客项目 D,我希望显示 404 页面以显示博客。
- 同样,如果用户访问不存在的合作伙伴资料 D,我希望显示合作伙伴的 404 页面。
- 如果在站点中未找到任何其他页面,则应按照正常情况通过 Kentico 设置显示站点 404 页面。
我对是否只使用 ASP.NET 配置犹豫不决,因为我想在 Kentico 内部维护解决方案,并且在添加新的 404 页面时不回收网站的应用程序池。
我的直接想法是创建一个自定义 Web 部件,我可以将其放到站点的全局 404 页面模板(每个 404 的默认位置)。此 Web 部件将使用错误路径(ala 查询字符串值 aspxerrorpath=)来查看未找到的路径,然后检查它是否包含单词“博客”或“合作伙伴”并将浏览器重定向到适当的 sub-404 -page 分别。或者,是否有更简单的方法——可能使用页面别名和/或宏——同时将解决方案保留在 Kentico 中?
我正在使用 Kentico 9 和 10。
【问题讨论】:
标签: http-status-code-404 kentico