How to Customize Error Page, Page Not Found and Access Denied in SharePoint 2010


There are many ways to customize these pages for example you can customize by code by creating a feature at web application scope or you can do it by power shell so let’s see the simple way.

First create three pages and place them in this path

C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\14\TEMPLATE\LAYOUTS\1033\

Custom_Error.html

Custom_NotFound.html

Custom_AccessDenied.html

Note: if you have multilingual site you need to place these pages in their language folder for example for Arabic

C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\14\TEMPLATE\LAYOUTS\1025\

Second Open SharePoint 2010 Management Shell with Farm Administrator User

Now For Custom page Not Found runs the following Power Shell:

$webApp = Get-SPWebApplication http://test 
$webApp.FileNotFoundPage = “Custom_NotFound.html”
$webApp.Update()

For Custom Error Page, Access Denied page,.. All pages listed in the below image

Run the following Power Shell:

 

$webApp = Get-SPWebApplication http://test
$webApp.UpdateMappedPage([Microsoft.SharePoint.Administration.SPWebApplication+SPCustomPage]::Error,"/_layouts/1033/Custom_Error.html")
$webApp.Update()

Ref: http://salvatoredifaziosharepoint.blogspot.com/2012/03/how-to-customize-sharepoint-2010-error.html

 

[Updated in 26/1/2016] , For SharePoint 2013:

  1. Make sure to update the SharePoint Farm with April 2014 Cumulative Update(CU) or higher.
  2. Make sure to use this path /_layouts/15/ for your custom pages
    For example 
    $webApp.UpdateMappedPage([Microsoft.SharePoint.Administration.
    SPWebApplication+SPCustomPage]::Error,”/_layouts/15/errorf404.html”) 
Comments (4)

  1. simple and usefull method, thank you Fadi

  2. Keith Hudson says:

    Is there a way to do customize the Access Denied and PageNotFound pages WITHOUT access to the server?

  3. fabdulwahab@outlook.com says:

    Hi Keith ,

    I don't think so because this method only available at farm level (No sandbox solution) also you can refer this URL :

    msdn.microsoft.com/…/microsoft.sharepoint.administration.spwebapplication.updatemappedpage(v=office.14).aspx

  4. PaulE says:

    For hints on doing this in SharePoint 2013, see my blog: spsawyer.wordpress.com/…/sharepoint-2013-custom-layouts-pages-and-custom-mapped-pages.

    UpdateMappedPage now has an overload that takes a CompatibilityLevel value. 🙂