One thing to remember here is that if a page shows the master page definition as "~masterurl/default.master"
, this does not mean that the master page is actually a file called "default.master". This is actually a tokenization used in the MasterPageFile attribute, and loads whatever value is set in the object model for SPWeb.MasterUrl
or SPWeb.CustomMasterUrl
depending on the page type.
This is explained in the MSDN article Customizing Master Pages in Windows SharePoint Services, where it states:
Dynamic token "~masterurl/default.master"
This token references a master page from a content page by using the MasterPageFile attribute together with the value of the MasterUrl property. As an example, in the following page directive, <%@ Page MasterPageFile="~masterurl\default.master"%>, the token "~masterurl/default.master" is replaced at run time by the value in the MasterUrl property. This property contains the server-relative full path to the master page, including file name.
At installation time, all SharePoint content pages use this dynamic token and the MasterUrl property is set to the Windows SharePoint Services default.master; however, you can change this value at any time to point to a different master page.