Custom error pages are not working IIS 7.0- It's display the default error page
We are having our site hosted on IIS 7.0 and Integrated mode and we have already set the custom error page like following.
<customErrors defaultRedirect="Error.htm" mode="On">
<error statusCode="404" redirect="Error.htm"/>
</customErrors>
It is redirecting url from the error page like following but its not displaying the url http://www.example.com/Error.htm?aspxerrorpath=/and its showing following error:
Runtime Error
Description: An application error occurred on the server. The current custom error settings for this application prevent the details of the application error from being viewed remotely (for security reasons). It could, however, be viewed by browsers running on the local server machine.
Details: To enable the details of this specific error message to be viewable on remote machines, please create a tag within a "web.config" configuration file located in the root directory of the current web application. This tag should then have its "mode" attribute set to "Off".
<!-- Web.Config Configuration File --> <configuration> <system.web> <customErrors mode="Off"/> </system.web> </configuration>
Notes: The current 开发者_开发问答error page you are seeing can be replaced by a custom error page by modifying the "defaultRedirect" attribute of the application's configuration tag to point to a custom error page URL.
<!-- Web.Config Configuration File --> <configuration> <system.web> <customErrors mode="RemoteOnly"
defaultRedirect="mycustompage.htm"/>
You might have to use the <httpErrors> element under <system.webServer> which is meant for IIS 7 etc.
Strange that it's different from the development version of IIS. Perhaps if you use IIS Express for development it should match the IIS 7 behaviour more closely.
You do have mode="Off"
in your provided XML fragment. Does changing it to mode="On"
work?
There is a selected solution already. I just want to contribute a bit more.
Another thing to look at is your machine.Config files, found in C:\Windows\Microsoft.NET\Framework{version}\Config and C:\Windows\Microsoft.NET\Framework64{version}\Config
Make sure you have.
<deployment retail="false"/>
精彩评论