Use a Sitefinity CMS WebForms page as a custom error page
If you plan on using a Sitefinity CMS page as a custom error page, you must take care of setting the proper response status code. By default, Sitefinity CMS will return status code 200 for any page that it resolves successfully. For example, if you are handling error status code 404 (resource does not exist) when serving your custom error page you should return status 404, to ensure compliance with SEO best practices.
To configure your Sitefintiy CMS WebForms custom error pages to return the desired status code, follow the instructions described in this article.
To do this, perform the following:
Add new user control to your Sitefinity CMS web application and name it accordingly, for example NotFoundStatusCodeSetter.
- Go to the code-behind and add the following code:
The code above sets the response status code to 404 only when viewing the page on the site frontend. You can still edit your page in the backend, thanks to the usage of IsDesignMode method. You must add the status code at a latest possible moment - in this sample, in the Render event.
- Register the user control in your Sitefinity CMS toolbox.
For more information, see Register a new widget in the backend.
- Create a page in Sitefinity CMS, that you want to use as a custom error page for the 404 status code and add the NotFoundStatusCodeSettercontrol to it.
- Publish the page.
As a result, the proper response status code will be returned when serving your custom error page.