C# 根据用户尝试的URL使用不同的404错误页
(注意:我对asp.net/c相当陌生,请耐心听我说) 在我的网站上,我在我的web.config中使用了一个自定义的404错误页面C# 根据用户尝试的URL使用不同的404错误页,c#,asp.net,redirect,web-config,http-status-code-404,C#,Asp.net,Redirect,Web Config,Http Status Code 404,(注意:我对asp.net/c相当陌生,请耐心听我说) 在我的网站上,我在我的web.config中使用了一个自定义的404错误页面 <customErrors mode="RemoteOnly" defaultRedirect="http://mywebsite.org/404"> <error statusCode="404" redirect="http://mywebsite.org/404" /> </customErrors> 现在我想添
<customErrors mode="RemoteOnly" defaultRedirect="http://mywebsite.org/404">
<error statusCode="404" redirect="http://mywebsite.org/404" />
</customErrors>
现在我想添加由包含特定字符串的URL“触发”的额外404页。例如,如果URL包含/library/
,我希望将用户重定向到http://mywebsite.org/library-404
,其中包含特定于网站库部分的信息。包含/services/
的URL和其他URL也是如此
这能做到吗?如果是,怎么做?谢谢您的时间。您可以尝试使用ASP.NET MVC。设置路由以映射Url。您可以在Global.asax.cs中定义方法应用程序错误并进行如下处理
void Application_Error(object sender, EventArgs e)
{
var error = Server.GetLastError();
var code = (error is HttpException) ? (error as HttpException).GetHttpCode() : 500;
string path = Request.Path;
if (code == 404)
{
if (new Regex(@"\/library\/", RegexOptions.IgnoreCase).IsMatch(path))
{
Server.ClearError();
Response.Redirect(String.Format("~/Library/Error404"));
}
}
}
您能否举例说明如何将routemap设置为URL?目前来看,这更多的是一个评论,而不是一个答案。