ASP.NET 没有扩展名的 404 页面的错误处理

ASP.NET error handling for 404 pages without extension

我有一个网站:Website Link 有一个问题,涉及到无分机呼叫。 如果你尝试这样的事情: This

我希望用户去:

here

但事实并非如此。

我该如何更改?

大气压。我的 web.config:

里有这个
    <customErrors mode="On" defaultRedirect="/Error.aspx" redirectMode="ResponseRewrite">
       <error statusCode="400" redirect="/Error.aspx?code=400" />
       <error statusCode="403" redirect="/Error.aspx?code=403" />
       <error statusCode="404" redirect="/Error.aspx?code=404" />
       <error statusCode="500" redirect="/Error.aspx?code=500" />
    </customErrors>  

  <system.webServer>
    <httpErrors existingResponse="PassThrough" />
    <modules runAllManagedModulesForAllRequests="true">

一些重写发送 Error.aspx 到“/findes-ikke”

经过更多的测试,没有运气,这是我的全部 web.config:

<?xml version="1.0" encoding="utf-8"?>
<configuration>
  <system.web>   
    <compilation batch="false" targetFramework="4.7.1" debug="true" />
    <customErrors mode="On" defaultRedirect="/Error.aspx" redirectMode="ResponseRewrite">
      <error statusCode="404" redirect="/Error.aspx?code=404" />
    </customErrors>
  </system.web>
  <system.webServer>
    <httpErrors errorMode="Custom">
      <remove statusCode="404"/>
      <error statusCode="404" path="/findes-ikke?code=404" responseMode="ExecuteURL"/>
    </httpErrors>
  </system.webServer>
</configuration>

您可以尝试以下方法:

将 web.config 行更改为:

<error statusCode="404" redirect="/findes-ikke?code=404" />

您还可以尝试在 web.config 中添加以下内容以重定向所有 http 请求:

 <system.webServer>
  <httpErrors errorMode="Custom">
     <remove statusCode="404"/>
     <error statusCode="404" path="/findes-ikke?code=404" responseMode="ExecuteURL"/>
  </httpErrors>

您也可以这样做来重定向所有错误请求。在上面给出的代码中进行此更改:

 <customErrors mode="On" defaultRedirect="/findes-ikke?code=404" redirectMode="ResponseRewrite">