C# 如何处理404错误

C# 如何处理404错误,c#,asp.net,iis,error-handling,http-status-code-404,C#,Asp.net,Iis,Error Handling,Http Status Code 404,如何处理所有404错误 如果我转到一个不存在的页面 例如: 它很好用 但是,或给出了404.0错误,我认为这是由于.nope未在IIS中注册,但是否有办法在web.config或代码中处理此问题?您可以,但必须在服务器级别执行此操作。根据您的Web服务器和/或IIS版本,执行此操作的方式可能会有很大不同。不幸的是,我不能给你一个答案:去做这个答案,随着时间的推移和服务器平台的发展,你可能需要进行修改。你可以,但你必须在服务器级别进行修改。根据您的Web服务器和/或IIS版本,执行此操作的方式可能

如何处理所有404错误

如果我转到一个不存在的页面

例如:

它很好用


但是,或给出了404.0错误,我认为这是由于.nope未在IIS中注册,但是否有办法在web.config或代码中处理此问题?

您可以,但必须在服务器级别执行此操作。根据您的Web服务器和/或IIS版本,执行此操作的方式可能会有很大不同。不幸的是,我不能给你一个答案:去做这个答案,随着时间的推移和服务器平台的发展,你可能需要进行修改。

你可以,但你必须在服务器级别进行修改。根据您的Web服务器和/或IIS版本,执行此操作的方式可能会有很大不同。不幸的是,我不能给你一个答案:去做这个答案,随着时间的推移和服务器平台的发展,你可能需要进行修改。

两者都有。最简单的方法是安装 并将其配置为重定向。假设您想要各种有趣的URL,那将是最简单的。web.config部分如下所示:

    <system.webServer>
      <rewrite>
        <rules>
          <rule name="My404" stopProcessing="true">
            <match url="^/Nothere\.nope" />
            <action type="Rewrite" url="/NotHere" />
          </rule>
        </rules>
      </rewrite>
    </system.webServer>

两者都有。最简单的方法是安装 并将其配置为重定向。假设您想要各种有趣的URL,那将是最简单的。web.config部分如下所示:

    <system.webServer>
      <rewrite>
        <rules>
          <rule name="My404" stopProcessing="true">
            <match url="^/Nothere\.nope" />
            <action type="Rewrite" url="/NotHere" />
          </rule>
        </rules>
      </rewrite>
    </system.webServer>
这可能是因为notthere.nope没有通过.NET。根据IIS的版本和配置,ASP.NET仅用于执行具有特定扩展名的请求

理想情况下,您应该尝试在IIS级别处理404—让它在应用程序堆栈中冒泡那么远是没有意义的。这将是我的建议

如果你真的想让ASP.NET能够处理这个问题,你可以,如果你使用的是IIS 7,那上面有一篇不错的文章

如果您使用的是IIS 6,则可以使用通配符映射到ISAPI扩展,如下所述。

这可能是因为notthere.nope没有通过.NET。根据IIS的版本和配置,ASP.NET仅用于执行具有特定扩展名的请求

理想情况下,您应该尝试在IIS级别处理404—让它在应用程序堆栈中冒泡那么远是没有意义的。这将是我的建议

如果你真的想让ASP.NET能够处理这个问题,你可以,如果你使用的是IIS 7,那上面有一篇不错的文章


如果您使用的是IIS 6,您可以使用通配符映射到ISAPI扩展,如下所述。

笑话回答::这是一个好主意,可以打乱我的QA部门,或者让我自己被炒鱿鱼笑话回答::这是一个好主意,可以打乱我的QA部门,或者让我自己被炒鱿鱼哈哈