site.master does not exist - HELP

Mar 3, 2009 at 11:47 AM
Hi guys...

I've googled the above issue and don't really know how to fix this.

I've installed BlogEngine 1.4 fine and have it working on the STANDARD theme. I've downloaded and installed themes and placed them in the THEME folder. However every single one says that the site.master is missing.

The blog will be internal so I can't link you, however, the url that the blog sits in is;


And the error I am getting is;

The file '/blog/themes/StarGazer/site.master' does not exist.

I think I'm right in saying he should be looking at themes/StarGazer/site.master?

Any help would be AMAZING.

Mar 3, 2009 at 6:14 PM
You're using BE 1.4 ... not 1.4.5?

The StarGazer theme isn't in a subfolder, like /blog/themes/StarGazer/StarGazer/site.master?  Just wondering since sometimes a ZIP file contains an extra sub-folder.

What if you make a copy of the Standard folder (and it's contents) -- call it Standard2, and then try choosing the Standard2 theme in the dropdown box on the Settings tab.  Does that work?

Do you have more than installation of BE on your computer?  Maybe you put the StarGazer theme in the wrong installation folder?
Mar 3, 2009 at 6:35 PM

Sorry it's BlogEngine.NET 1.4.5

It's any theme I try...none of them work at all.

I will try the standard duplicate tomorrow. And no it only has the one installation of BE.

Mar 4, 2009 at 11:14 AM
I just copied the Standard folder and called it Standard2 and I recieved the same error. Saying the site.master does not exist.

Server Error in '/blog' Application.

The file '/blog/themes/Standard2/site.master' does not exist.

Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code.

Exception Details: System.Web.HttpException: The file '/blog/themes/Standard2/site.master' does not exist.

Source Error:

An unhandled exception was generated during the execution of the current web request. Information regarding the origin and location of the exception can be identified using the exception stack trace below.

Stack Trace:

[HttpException (0x80004005): The file '/blog/themes/Standard2/site.master' does not exist.]
   System.Web.UI.Util.CheckVirtualFileExists(VirtualPath virtualPath) +1945171
   System.Web.Compilation.BuildManager.GetVPathBuildResultInternal(VirtualPath virtualPath, Boolean noBuild, Boolean allowCrossApp, Boolean allowBuildInPrecompile) +111
   System.Web.Compilation.BuildManager.GetVPathBuildResultWithNoAssert(HttpContext context, VirtualPath virtualPath, Boolean noBuild, Boolean allowCrossApp, Boolean allowBuildInPrecompile) +93
   System.Web.Compilation.BuildManager.GetVPathBuildResult(HttpContext context, VirtualPath virtualPath, Boolean noBuild, Boolean allowCrossApp, Boolean allowBuildInPrecompile) +60
   System.Web.UI.MasterPage.CreateMaster(TemplateControl owner, HttpContext context, VirtualPath masterPageFile, IDictionary contentTemplateCollection) +103
   System.Web.UI.Page.get_Master() +48
   System.Web.UI.Page.ApplyMasterPage() +18
   System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +685

Version Information: Microsoft .NET Framework Version:2.0.50727.1433; ASP.NET Version:2.0.50727.1433
Mar 4, 2009 at 4:12 PM
So at this point, if you were to change your theme back to the Standard theme, that works, right?  I think you said the Standard theme is the only one that's working.

After switching back to the Standard theme, try renaming the Standard theme folder.  It's currently called "Standard".  Try renaming the folder to "hidden" or something different.

You should then get the same error message stating that the file "/blog/themes/Standard/site.master" is missing.  But if you don't get that error message and the blog continues working after renaming the Standard folder to "hidden", then that would mean the themes folder where you've been adding themes and making these changes is not the same location your blog installation is at.
Mar 4, 2009 at 4:50 PM
Changed the name of the folder and it gave me the error.

site.master does not I'm using the correct folder :)

but that obviously doesn't help me lol....but thanks so far.
Mar 4, 2009 at 5:33 PM
Haha ... sorry, that last test was just to completely rule out the remote possibility there were different blog installations on your computer.

Another possibility is permissions.  Check the security permissions on these other theme folders and compare the permissions to what you have on the Standard theme folder.  Additionally, try clearing out the Read-only box for these other folders.
Mar 5, 2009 at 8:09 AM
Nope, the standard theme is Read-Only and has nothing different to any of the other folders in the Themes folder.

is it not just looking in the wrong folder???

I don't understand why it's looking in;


Should the folder not be;

'/themes/Standard2/site.master'  ???

Mar 5, 2009 at 4:58 PM
What is the URL to your blog?  I'm guessing you have a "blog" application setup within the website -- e.g. localhost/blog/... which is why it would be /blog/themes/Standard2/site.master.  This /blog is also referenced in the error you're getting -- "Server Error in '/blog' Application."  If your blog was installed in the root of the website (e.g. Default Web Site), then there wouldn't be a /blog.  I'm pretty sure the /blog part is not an issue.

You mentioned the other theme folders are the same as the Standard theme folder.  But did you check all of the security permissions?  I ask because I can duplicate the exact error you're getting if I remove permissions from any one of my theme folders.  You should right-click on any one of these other theme folders, select Properties, and then go to the Security tab.  Check which permissions (Full control, Modify, Read & execute, List folder contents, Read, Write, etc) you have setup for each of the groups and users listed.  You'll want to select each group/user listed on the top half one at a time, and see the permissions for that user/group on the bottom half of the screen.  Compare that to what you have setup for the Standard folder.
Mar 6, 2009 at 8:30 AM
The URL to the blog is; http://servernamehere/blog/, which is on one of our servers at work to test out.

I have the blog setup in a folder on the wwwroot called /blog.

WAHEY! Thanks BenAmada. I copied over the security settings from the Standard and it works. Don't really understand why but it works.

Thanks for all your help.
Mar 25, 2010 at 6:51 PM

I just ran into this problem with some themes and a brand new BE 1.6 installation.  Here is a trick that may help someone in the future, as this post assisted me today...  This can apply to alot more than jsut blog engine themes.

Unzipping files directly into your web folders often maintain the file permissions from the system they were originally zipped on. 

I just installed 6 themes and 2 of them gave me the above mentioned site.master does not exist and it was indeed a file permission problem.  A really easy work around is to UNZIP things to a temporary area.  I use the server desktop.  THEN COPY the unzipped files to your desired destination.  As the files are copied from the desktop to your web folder they will pickup the upper level ACL permissions and copy those as well.

I hope this helps someone in future.