【问题标题】:How to avoid custom/Server error in web site?如何避免网站中的自定义/服务器错误?
【发布时间】:2023-03-03 02:31:01
【问题描述】:

我在服务器上安装了 asp.net Web 应用程序,我想避免来自我的站点的所有自定义和服务器错误。

为此我已经使用了

<customErrors mode="RemoteOnly" defaultRedirect="~/ErrorPage/TryAgainLater.aspx">   <error redirect="~/ErrorPage/PageNotFound.aspx" statusCode="404"/> </customErrors>

使用上面的代码可以避免一些问题。即。

假设“http://Exaple.com/Careers.aspx”页面在我的站点中可用

案例 1.http://Exaple.com/Careersss.aspx“按照上述规则工作正常”。

案例 2。http://Exaple.com/!@##Careersss.aspx“不工作” 注意:这里我添加特殊字符

案例 3:http://Exaple.com/Careersss.aspxxxx“不工作” 注意:在“.aspx”后添加字符

案例 4:http://Exaple.com/Careersss.aspx/!@!@!@! “不能在这里破坏设计”。 注意:添加带有特殊字符的“/”。

当用户遇到案例 2、3、4 时请帮助我,然后他们会自动重定向到错误页面。

提前致谢。

【问题讨论】:

  • 那么...问题是什么?它和javascript有什么关系?
  • @kirilloid 我想这与他使用井号的第二种情况有关,但从问题上看一点都不清楚。
  • 这里我想避免不必要的 URL,如果有人试图分散我们网站的注意力,那么我只想让他们直接进入错误页面。
  • 嗨 Yashwant Kumar Sahu,我认为案例 2、3 和 4 是 URL 语法错误的案例。这就像请求一个以 .ne 或 .co 结尾的 URL,而它应该分别是 .net 或 .com。
  • 是的情况 2,3,4 是错误的 URL,我的问题是“当用户在站点中明确点击 wring URL 时,它将重定向到我的错误页面。即“snapdeal.com/…

标签: javascript jquery asp.net html url-rewriting


【解决方案1】:
【解决方案2】:

如果您不想更改 IIS 设置,您可以在 Global.asax 中安装自己的 404 错误处理程序。只需将此方法添加到我们的 Global.asax.cs 代码隐藏文件中:

protected void Application_EndRequest(object sender, EventArgs e)
{
    HttpResponse response = HttpContext.Current.Response;
    if (response.StatusCode == 404 && response.SubStatusCode == 0)
    {
        response.Redirect("/test/TryAgainLater.aspx?error=NotFound");
        response.End();
    }
}

如果它不能解决问题并且您仍然收到 404 错误页面,请将此设置添加到您的 web.config 文件中:

<configuration>
    <system.webServer>
      <modules runAllManagedModulesForAllRequests="true"/>
    </system.webServer>
</configuration>

【讨论】:

    猜你喜欢
    • 2018-03-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-11-22
    • 2012-07-12
    • 2017-06-30
    • 1970-01-01
    • 2011-06-06
    相关资源
    最近更新 更多