自定义404页面没有执行丢失的ASPX页面 - IIS 7,5

时间:2011-11-24 23:46:28

标签: asp.net iis iis-7 error-handling web-config

在经典模式下使用IIS 7.5(因为我们正在使用SiteCore)和WebForms应用程序(.Net 3.5),我们将错误页面定义为

  <httpErrors errorMode="Custom" existingResponse="Replace">
    <remove statusCode="404" subStatusCode="-1" />
    <error statusCode="404" prefixLanguageFilePath="" path="/Error/404.aspx" responseMode="ExecuteURL" />
  </httpErrors>

现在,对于请求时未找到的非.Net类型的文件,未显示自定义错误页面,并返回标准404状态类型。如果我们使用扩展名为.htm的自定义错误页面(例如path =“/ Error / 404.htm”),则显示它!

从我读过的内容来看,xml是正确的,应该适用于非.Net文件类型。我的web.config中没有任何部分。听起来像其他东西,例如SiteCore可能影响事物 - 如果您需要更多信息,请告诉我。

2 个答案:

答案 0 :(得分:1)

404自定义页面 - 工作.aspx&amp;非.aspx网址
适用于GoDaddy共享Windows主机(IIS7 .Net4)

在共享GoDaddy托管中的本地主文件夹上创建404.html或404.aspx文件。

-Web.Config文件 -

<?xml version="1.0" encoding="UTF-8"?>
<configuration>
    <system.webServer>
         <rewrite>
            <rules>
                <rule name="Main Rule" stopProcessing="true">
                    <match url=".*" />
                    <conditions logicalGrouping="MatchAll">
                        <add input="{REQUEST_FILENAME}" matchType="IsFile" negate="true" />
                        <add input="{REQUEST_FILENAME}" matchType="IsDirectory" negate="true" />
                    </conditions>
                    <action type="Rewrite" url="404.html or 404.aspx" />
                </rule>
            </rules>
        </rewrite>
    </system.webServer>
</configuration>

答案 1 :(得分:0)

您是否尝试将此404页面添加到IIS - &gt;网站属性 - &gt; “自定义错误”选项卡,然后在404下,指向您希望在找不到文件时显示的网页?