Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/313.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/redis/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# web.config中的customError仅适用于.aspx页面_C#_Asp.net_Error Handling - Fatal编程技术网

C# web.config中的customError仅适用于.aspx页面

C# web.config中的customError仅适用于.aspx页面,c#,asp.net,error-handling,C#,Asp.net,Error Handling,我使用的是FriendlyUrl,它去掉了所有的.aspx扩展名。但是,当我在web.config文件中设置customError时,只有在扩展名为.aspx的路径上出现错误时,它才起作用 例如,不转到我自己的错误页面: localhost:xxxxx/default拼写错误 例如,转到我自己的错误页面: localhost:xxxxx/default拼写错误。aspx 实际上,我必须手动添加.aspx,才能使其正常工作,否则我只会得到默认的asp.net错误页面 Web.config: <

我使用的是FriendlyUrl,它去掉了所有的.aspx扩展名。但是,当我在web.config文件中设置customError时,只有在扩展名为.aspx的路径上出现错误时,它才起作用

例如,不转到我自己的错误页面:
localhost:xxxxx/default拼写错误

例如,转到我自己的错误页面:
localhost:xxxxx/default拼写错误。aspx

实际上,我必须手动添加
.aspx
,才能使其正常工作,否则我只会得到默认的asp.net错误页面

Web.config:

<customErrors defaultRedirect="Errors/DefaultError.aspx" mode="On">
      <error statusCode="404" redirect="Errors/Filenotfound.aspx" />
</customErrors> 

(我在web.config中尝试过使用和不使用.aspx扩展名)。

试试这个:

<system.webServer>
<httpErrors errorMode="Custom">
  <remove statusCode="404"/>
  <error statusCode="404" responseMode="Redirect" path="/page-not-found"/>
</httpErrors>
</system.webServer>

使用您的友好url更改路径名

这是给IIS6的

<system.web>
<customErrors mode="RemoteOnly">
  <error statusCode="500" redirect="~/internal-server-error"/>
  <error statusCode="404" redirect="~/page-not-found"/>
</customErrors>
</system.web>


这是在
标签内吗?如果您使用的是IIS 7或更高版本,请使用``感谢asnwer,在同一web.config文件中同时使用
system.web
system.webServer
是否可以?是的。这完全取决于您使用的IIS版本,它将选择适合您的托管服务器应用程序的版本。