我几乎把它扯掉了,这看起来很简单。
希望实现自定义的404错误页面,这是我的代码-看起来很简单,但是却行不通-任何想法。
在任何人不喜欢它之前,我已经尝试了几乎所有线程,但是同一件事发生了,或者实际上没有。
<httpErrors errorMode="Custom">
<remove statusCode="404" />
<error statusCode="404" path="/errors/e404.asp" responseMode="ExecuteURL" />
</httpErrors>
没有此代码,我会收到标准的Windows错误消息。
HTTP Error 404.0 - Not Found
The resource you are looking for has been removed, had its name changed,
or is temporarily unavailable.
使用此代码,我得到了另一个错误-但没有我的自定义页面。事情正在发生,但不是我想要的。任何想法或指针将不胜感激。
This localhost page can’t be found No web page was found for the web address: https://localhost
答案 0 :(得分:1)
这里的问题几乎可以肯定是因为您使用了“ ExecuteURL”,而根本找不到它。我能够通过使用IIS Express和Visual Studio 2017重现您遇到的问题。要解决问题,请从Sysinternals(https://docs.microsoft.com/en-us/sysinternals/downloads/procmon)运行ProcMon,并搜索要搜索的文件(Test123)和错误文件您正在期待(e404.asp)。
重要的是要注意(正如其他人所说的那样),当使用ExecuteURL时,它必须是站点的相对路径,而不是App或VDir。 VS和IISExpress在后台处理了许多这些细节,因此使确定Site / App / VDir / etc的级别更加困难。