I have a Web Application in Asp.Net 4 running locally on IIS 7. I need display a Custom Page (404) and an 500 instead for the defaults page for IIS. Using this httpErrors in Web.Config
<system.webServer>
<httpErrors>
My Site is in
C:\inetpub\wwwroot\mysite\
My Custom Error page in:
C:\inetpub\wwwroot\mysite\ErrorPages\404.htm
C:\inetpub\wwwroot\mysite\ErrorPages\505.ht开发者_运维技巧m
I do not understand how it works. COuld you please provide me a sample of code?
Thanks
I solved my problem with this.
<httpErrors errorMode="Custom">
<remove statusCode="404" subStatusCode='-1' />
<remove statusCode="500" subStatusCode='-1' />
<error statusCode="404" path="/404.aspx" prefixLanguageFilePath="" responseMode="ExecuteURL" />
<error statusCode="500" path="/500.aspx" prefixLanguageFilePath="" responseMode="ExecuteURL" />
</httpErrors>
This needs to go in Web.config
, under <configuration>
> <system.webServer>
e.g.
<configuration>
<system.webServer>
<httpErrors ...>
// define errors in here ...
</httpErrors>
</system.webServer>
</configuration>
Here is an example, hope it helps
<system.web>
<customErrors mode="RemoteOnly" defaultRedirect="default.aspx">
<error statusCode="404" redirect="~/ErrorPages/404.htm"/>
<error statusCode="500" redirect="~/ErrorPages/505.htm"/>
</customErrors>
</system.web>
Edit for comments: Here's the example I think you need
<configuration>
<system.webServer>
<httpErrors errorMode="DetailedLocalOnly" defaultResponseMode="File" >
<remove statusCode="500" />
<error statusCode="500"
prefixLanguageFilePath="C:\Contoso\Content\errors"
path="500.htm" />
</httpErrors>
</system.webServer>
</configuration>
http://www.iis.net/ConfigReference/system.webServer/httpErrors/error
精彩评论