Sitecore has a report called “No Found URLs” located within the “Site Health” section of the Engagement Analytics component in Sitecore 7.2 and below. This report is very useful to determine what pages of a Sitecore powered wesbsite are generating “Page Not Found Errors’ / 404 web response errors. However in some Sitecore solutions, this report sometimes seems to yield results that are less than ideal out of the box and that may be due to several factors that may not be apparent. This post will identify some of those factors and reasons the “No Found Url” report might return little to no results.
You truly do not have any 404s
It possible that you never see page not found errors in this report simply because the site you are building is brand new. This means that the site or host has never had web traffic and you do not have any links on your website pointing to resources that do not exist. I believe this is the answer everyone wants to believe about their website, but it is typically not the case unless you are performing carefully monitoring for this specific error.
A Custom Page Not Found Solution Is Being Utilized
This default report by Sitecore is specifically designed to look at requests that triggers the default “NotFound.aspx” page in Sitecore. This means if you are using a different URL to display a “Page Not Found” error message, Sitecore will not automatically pick up that “404” request in this report or other site health reports. Since Sitecore cannot track the custom page out of the box, this will affect the reliability of this report’s results.
Examples of a custom “Page Not Found” solution might be utilized, when it is strictly done through IIS or with a Sitecore solution has more than one website. Each website within Sitecore could have its own custom 404 page, which requires custom coding to achieve.
To ensure that the “Not Found Urls” report pickups a custom page or URL such as www.example.com/404, we should update Sitecore’s report query and change which URL it looks at in order to display the page visit and hit that generated the 404 request.
To make the change, you must be a Sitecore administrator. This ensures that not every user can make system changes that affects reporting.
In order to make the change, navigate to the path: “/sitecore/system/Settings/Analytics/Reports SQL Queries/Not Found Urls”
Modified the default “SQL Server” from
Based on my example of http://www.example/404 being my customize content page for a “Page Not Found” error message, this report will now start showing all of the 404 request that are generated as a result of a custom 404 page.
In conclusion, this is a very quick solution that does not require a developer and allows for a Sitecore administrator to enhance the effectiveness of this report. However, this solution only works with Sitecore 7.2 and below, the query in Sitecore 8 has changed and a different solution is needed to make custom 404 pages display in the Site Health reports.