By default your SharePoint pages are ghosted, which means the layout template is stored on the web front end server's file system, while the content is stored in SQL Server.
Once you make modifications to a page using SharePoint Designer 2007, the page becomes unghosted; both layout and content are stored in SQL Server and the file is detached from the template page.
There are some concerns with this:
- Performance: allthough ASP.NET 2.0 is said to solve this, it still remains a fact that the page is stored entirely in SQL Server.
- Design implications: once the page is detached from the template, changes to that template won't be reflected on the unghosted page. Any future updates must be done using SharePoint Designer. Using SharePoint 2007 this is not very catastrophic since the master page defines the design and the content page only contains a reference to it's master page.
Now there's also Site Templates and Site Definitions. The former are created by just a few clicks on a button (Save site as template...) while the latter includes more flexibility and scalability but also more development time.
Q. How does a Site Template really behave when it comes to ghosting/unghosting ?
Let's say you create a new Team Site, add Web Parts, SharePoint Lists and Libraries, theme it, etc. Next you save this site as a .stp (Site Template) to create other sites with it, are these sites ghosted or unghosted ?
A. It depends.
A .stp file is really a zip archive containing a manifest.xml and unghosted pages.
The manifest contains a reference the original Site Definition (e.g. a standard 'Team Site') and a delta of the changes to the original definition. Any changes to lists or libraries, web parts or site settings will be included in the manifest.
This also means that the original Site Definition must be available on the (each) web front end server for the Site Template to work.
If you modified any pages using SharePoint Designer 2007 (causing them to be unghosted), they will be added as separate files in the .stp file.
A Site Template is in general fully ghosted except for unghosted pages that are already present.