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

时间:2017-11-21 12:36:51

标签: asp.net https iis-7

我有一个网站: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发送给&#34; / findes-ikke&#34;

经过更多的测试,没有运气,这是我的整个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>

1 个答案:

答案 0 :(得分:0)

您可以尝试以下操作:

将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">