SOLVED: site.master missed for Garland Theme in BE2.5 RC1 download

Topics: Themes
Jun 24, 2011 at 7:39 PM

Hi, after downloading and installing BE2.5 RC1 I get the error "site.master not found" when I try to aply "Garland Revisited" theme.

Where can I find it or fix it?

Thanks in advance!

Jun 24, 2011 at 7:58 PM

Are you using the BE2.5 RC1 download, as-is ?  Or have you upgraded an existing blog to BE2.5 RC1?

In your Themes folder, there should be a "Garland-Revisited" folder, and there should also be a "RazorHost" folder which is a helper folder needed for Razor themes such as Garland-Revisited.  Do you have both of those folders?

Jun 24, 2011 at 9:04 PM
Edited Jun 24, 2011 at 9:10 PM

I made a "fresh-installation" from BE2.5 RC1.
And yes, in Theme folder I have a "Garland-Revisited" folder and also a "RazonHost" folder.

If I click in Admin - Themes - Garland-Revisited "Preview" I see the blog correctly with this theme, but when I click on "Set as Current Theme" I get the mentioned error ("The file '/Blog/themes/Garland-Revisited/site.master' does not exist."). Any other theme works fine.


Jun 24, 2011 at 10:00 PM

I see.  One thing to check ... did you upload BE to a web server?  If so, check the Garland-Revisited folder to see if all the files uploaded correctly.  Even if you didn't upload, you can still check to see if all the files are there.  Within Garlard-Revisited, there should be 2 folders (images and img) and then 8 files.  The files absolutely needed are site.cshtml, CommentView.cshtml, PostView.cshtml.

Jun 24, 2011 at 10:04 PM

Another thing or two to check ... are you able to create Posts, etc?  Just wondering if Write file permissions are setup on the App_Data folder.  You might want to also try restarting the blog by making any change to the web.config file (add a space, etc) to see if you still get that error after restarting the blog, and if the Garlard-Revisited theme appears after restarting the blog, or if the old theme appears.

Jun 24, 2011 at 10:12 PM

I configured BE as Virtual Directory in an existing website.
In the "Garland-Revisited" uploaded folder are these 6 files, not 8:

  • CommentView.cshtml
  • newsletter.html
  • PostView.cshtml
  • site.cshtml
  • style.css
  • WidgetContainer.cshtml

... and the "images" and "img" folders..

Jun 24, 2011 at 10:18 PM
Edited Jun 24, 2011 at 10:18 PM

I'm able to create posts,  but in fact I get some "Access to path App_Data/..../xxx.xml denied" errors when I try to modify some BE configurations..
Could it be a write-permission issue of some files in "App_Data" ?

Jun 24, 2011 at 10:26 PM

When I restart the blog by changing web.config, I see the blog with default configurations, default theme, but it mantains the posts.. :|

Jun 24, 2011 at 10:53 PM

I think what's happening is that Write permissions are not setup on the App_Data folder.  When you change the theme, it (a) saves the changes to settings.xml in the App_Data folder, and then clears out a piece of information in memory related to whether your selected theme is a Razor theme or not.  I think it is failing when it is saving settings.xml, and then it doesn't get to the part where it clears out that piece of information in memory.  That's also why when you restart your blog, it's back to the default theme ... because the change in theme never got correctly saved.

You'll want to add Write permissions to the App_Data folder for the ASPNET account.  Sometimes its the Network Service account.  If you're at a web hoster, they will often have a way to setup Write permissions thru their control panel.  If it's your own box/server that you are maintaining, the account to give Write permissions to will be the same account that the application pool is running under -- aka the "application pool identity".

Jun 24, 2011 at 11:04 PM

I see.. So I have to wait to make the "App_Data" write permissions cheks until Monday, when I will have access fisically to the webserver.

Thanks a lot Ben.
Have a nice weekend!

Jun 28, 2011 at 6:07 AM

It was a problem with the "App_Data" write permissions. Had to add couple of "IUSR_" users and everything works fine.

Thanks for your help!