我是 Orchard CMS 的新手。如果有任何错误,我需要向管理员创建电子邮件通知。我制作了一个自定义模块,因此它会向管理员发送电子邮件。另外,我已经从错误页面重定向到模块。
这是我的NotFound.cshtml
自定义主题中的代码
<script type="text/javascript" language="javascript">
function ToError() {
window.location.href = '/FourOFour?LastURL=' +
(window.location.host + window.location.pathname);
}
window.onload = ToError;
</script>
这是我创建的模块中的自定义路线
new RouteDescriptor {
Priority = 11,
Route = new Route(
"FourOFour",
new RouteValueDictionary {
{"area", "Prenagen.ErrorEmailing"},
{"controller","Utama"},
{"action","Error404"}
},
new RouteValueDictionary(),
new RouteValueDictionary{
{"area", "Prenagen.ErrorEmailing"}
},
new MvcRouteHandler())
}
因此未找到的页面将重定向到/FourOFour
. 当我在 localhost 中测试它时,一切正常。NotFound
我键入一个不存在的页面,然后它重定向到/FourOFour?LastURL=page
. 并且电子邮件被发送给管理员。当我将它发布到服务器时,未找到重定向到 FourOFour,但未找到该页面。我该如何解决这个问题?请任何人帮助我。
编辑:它会创建一个无限循环,因为FourOFour
找不到它并不断重定向到同一页面。