Go Back

Bullet Proof Guide to Installing Sitefinity 3.x

If you’re evaluating Sitefinity or doing development with Sitefinity, you’ll probably be interested in installing Sitefinity on your local machine.  Because Sitefinity is intended to be a server product, installing on an non-server computer can be challenging.

This video & blog is designed to be a bullet proof guide to installing Sitefinity on Windows Vista and/or Windows 7.  If you’re running Windows XP, you’ll find the Sitefinity install to be less challenging because XP uses IIS6 and the OS security isn’t as limiting.

Note: You aren’t required to run the Sitefinity install.  Sitefinity is also distributed via a blank project zip file.  This empty Sitefinity project can be opened in Visual Studio and does not require IIS.

Installation Steps

  1. Install Internet Information Services (IIS7)
  2. Configure Default Web Site & Classic .NET AppPool
  3. Install Microsoft SQL Server Express
  4. Install Sitefinity “As Administrator”
  5. Configure Sitefinity Application in IIS Manager
  6. Open the Sitefinity Project Manager
  7. Configure the New Web Site in IIS Manager
  8. Create SQL Express Database for Web Site
  9. Project Startup / Setup new Sitefinity Web Site

Common Sitefinity Installation Errors

Step 1 - Install Internet Information Services (IIS7)

Before Sitefinity can be installed a web hosting environment (IIS6 or IIS7) needs setup.    By default, IIS will not be installed.  To install IIS, click the Windows Orb –> Control Panel –> Programs –> Turn Windows features on and off.

1.  Check Internet Information Services

Windows Features

2.  Expand Internet Information Services

3.  Expand Web Management Tools

4.  Expand IIS 6 Management Compatibility

5.  Check IIS Metabase and IIS 6 configuration compatibility.

6.  Expand World Wide Web Services

7.  Expand Application Development Features

8.  Check ASP.NET

9.  Expand Common HTTP Features

10.  Check Static Content

11.  Expand Security

12.  Check Windows Authentication

Fully Expanded IIS 7 Windows Features

Check, re-check and check again the options above.  Most of these options are not selected by default and forgetting to select one of these options will result in errors.

When all the options have been selected, click the OK button.

Step 2 – Configure Default Web Site & Classic .NET AppPool

The Sitefinity installer will create virtual directories under the Default Web Site.  In addition, Sitefinity requires IIS6 features (features that were enabled in Step 1).  The step below demonstrate how to configure IIS7 to use IIS6 compatibility.

1.  Click the Start Orb –> Control Panel –> System and Security –> Administrative Tools

2.  Click the IIS Manager

3.  Click Application Pools

4.  Click Advanced Settings

Advanced Settings for IIS Application Pools

5.  Change the Identity to LocalSystem

Advanced Settings for IIS Classic .NET AppPool

6.  Click the OK button

7.  Select the Default Web Site

8.  Click Advanced Settings…

IIS Default Web Site Advanced Settings

9.  Change the Application Pool to Classic .NET AppPool

IIS Application Pool for Default Web Site

10.  Click the OK button

All web applications created under this Default Web Site will inherit this application pool setting.

Step 3 - Install Microsoft SQL Server Express

Sitefinity requires a database to store information.  Sitefinity supports MySQL, Oracle, MS SQL Server 2000 & MS SQL Server 2005.  However, for evaluation/testing/development purposes many developers will find it easiest to use Microsoft SQL Server 2005/2008 Express.

If you have Visual Studio or Visual Studio Express installed, then SqlExpress is probably already installed.  To confirm that SQL Express Server is installed:

1.  Click the Start Orb –> Control Panel –> Programs –> Programs and Features.

2.  Click Uninstall a program

Microsoft SQL Server 2005 in Uninstall Programs

If Visual Studio or Microsoft SQL Server 2005/2008 is not installed, download Visual Studio Web Express and SQL Server Express.

Step 4 – Install Sitefinity “As Administrator”

The Sitefinity installer creates virtual directories in IIS under the Default Web Site.  This task requires Administrator privileges.  The Sitefinity installer must be run as Administrator to be successful.

1.  Download the Sitefinity installer

2.  Right-click the downloaded exe file

3.  Click Run as Administrator

Run Sitefinity Installer As Administrator

4. Continue through the Sitefinity Install Wizard

 Do Not Launch the Sitefinity Project Manager after Installation

5.  Do Not check Sitefinity Project Manager and click Finish

Step 5 – Configure Sitefinity Application in IIS Manager

The Sitefinity installer creates two virtual directories in the Default Web Site in IIS.  By default, these new virtual directories should have the correct permissions.  However, it is often helpful to double-check the IIS settings.

1.  Click the Start Orb –> Control Panel –> System and Security –> Administrative Tools

2.  Click the IIS Manager

3.  Expand Sites –> Default Web Site –> telerik –> Sitefinity3.6

4.  Click Advanced Settings

Sitefinity IIS Advanced Settings

5. Confirm that the Application Pool is set to Classic .NET AppPool 

 Sitefinity Classic .NET AppPool settings

6.  Click the OK button.

7.  Click the Authentication icon.

IIS Authentication options for Sitefinity

8.  Ensure that Anonymous Authentication is Disabled

9.  Ensure that ASP.NET Impersonation is Enabled

10.  Ensure that Windows Authentication is Enabled

Sitefinity IIS Authentication Settings

Step 6 – Open the Sitefinity Project Manager

The web-based Sitefinity Project Manager, just like Sitefinity’s installer, creates virtual directories in IIS.  This task requires Administrator privileges.  To make use of the Project Manager the web browser must be running as Administrator and IIS Impersonation must be enabled.

1.  Right-click the IE browser icon and click Run As Administrator…

 Run Internet Explorer as Administrator

2.  Visit: http://localhost/telerik/Sitefinity[version]  (Example: http://localhost/telerik/Sitefinity3.6)

Create New Project in Sitefinity

4.  Click the Create new project button

Note:  You might be asked to authenticate yourself.  If this is the case, you’ll need to enable your computer’s local Administrator account and authenticate using the Administrator account.  (Click here for instructions.)

5.  Type a name for the new project

Naming new project in Sitefinity

5.  Continue through the Project Manager creation wizard

Sitefinity Project Created Sucessfully

6.  Close the web browser, DO NOT click Go to administer the project

Step 7 -  Configure the New Web Site in IIS Manager

The Sitefinity Project Manager created a new web application in IIS.  The steps below describe how to check the IIS options for this new web site.

1.  Click the Start Orb –> Control Panel –> System and Security –> Administrative Tools

2.  Click the IIS Manager

3.  Expand Your Computer –> Sites –> Default Web Site –> YourNewWebsite

4.  Click Advanced Settings

IIS Advanced Settings for New Sitefinity Web Site

5. Confirm that the Application Pool is set to Classic .NET AppPool 

Changing Application Pool for New Sitefinity Web Site

6.  Click the OK button

7.  Click the Authentication icon for the new web site

IIS Authentication Settings for new Sitefinity Web Site

8.  Ensure that Anonymous Authentication is Enabled

9.  Ensure that Windows Authentication is Disabled

10.  Ensure that Forms Authentication is Enabled

11.  Ensure that Windows Authentication is Disabled

Authentication Options for the new Sitefinity Web Site

The settings above will ensure the IIS process will maintain the Identity that is set for the Classic .NET AppPool.  It will not be possible for this IIS process to Impersonate another user.

Step 8 – Create SQL Express Database for Web Site

Sitefinity can use attached (~/App_Data) SQL Express database files.  This technique works well while running web sites inside Visual Studio.  However, when a web site is setup through Sitefinity’s Project Manager and IIS, it can be challenging to setup the correct security environment to allow SqlExpress User Instances to be created.

The workaround to this problem is to manually create & configure a new SQL Express database.

1.  Download and install SQL Server Management Studio Express

2.  Click the Start Orb –> All programs –> Microsoft SQL Server 2005/2008

3.  Click SQL Server Management Studio Express

4.  Connect using your local username

SQL Server 2005 Connection Window

5. Expand your computer

Creating a new SqlExpress Database

6.  Right-click Databases

7.  Click New Database

8.  Type a Database name (I suggest using the same name used for Project Name)

New Database for Sitefinity Web Site

9.  Click the OK button

In Step 2 the Identity for the Classic .NET AppPool’s Identify was set to Local System.  By default, this account should already be setup in the Logins.

Checking Database Security for new Sitefinity Database

In addition, the System account should already be granted the sysadmin database role.

Database Server Roles for Sitefinity Database

Because the Identity for the Classic .NET AppPool is Local System and Local System already has database privileges, no changes are needed.

Step 9 – Project Startup / Setup new Sitefinity Website

1.  Click IE to open a new web browser

2.  Visit the new project’s URL: http://localhost/[projectname]

Set Database for new Sitefinity Project

3.  Select SQL Server 2005 / 2008

4.  Check Windows Authentication

5.  Type localhost\SQLEXPRESS for Server

6.  Type your Database Name for Database

Database Options for new Sitefinity Project

7.  Click the Continue button. 

8.  Continue through the Sitefinity Project Startup wizard

When the installation is finished, you should be able to navigate to the main web site (example: http://localhost/TestWebsite).

Common Sitefinity Installation Errors

Below are some installation related errors I encountered while working through this topic.  I also included the solutions I used to overcome these errors.  The details can be found in the steps above.

Error creating virtual directory telerik.  Exception details: Unknown error (0x80005000)
Error creating virtual directory telerik/Sitefinity3.6.  Exception details: Unknown error (0x80005000)

  1. The Sitefinity installer isn’t being run as Administrator.
  2. IIS has not been installed.
  3. The necessary IIS features have not been installed.
  4. The Default Web Site in IIS has been removed or renamed.

HTTP Error 500.24 - Internal Server Error
An ASP.NET setting has been detected that does not apply in Integrated managed pipeline mode.

500 - Internal server error.
There is a problem with the resource you are looking for, and it cannot be displayed.

Change the web site’s application pool to Classic ASP.NET AppPool.

Access to the path 'C:\Program Files\telerik\Sitefinity3.6\ProjectManager\Templates\Community' is denied.

  1. The web browser is not being run as Administrator. 
  2. Impersonation has not been enabled for the telerik\Sitefinity3.6 application in IIS.

There was an error trying to connect to the Database Server:
Failed to generate a user instance of SQL Server due to failure in retrieving the user's local application data path. Please make sure the user has a local user profile on the computer. The connection will be closed.

You’re trying to use SqlExpress for the database type, use the database instructions above.

There was an error trying to connect to the Database Server:
Cannot open database "TestWebsite" requested by the login. The login failed. Login failed for user 'NT AUTHORITY\IUSR'.

The Identity for the Classic .NET AppPool has not been set to Local System.  Alternately, you can grant database privileges to the user shown above (IUSR).

Never ending loop during Project Startup.  After typing the database connection details you are returned to Step 1.

The new web site is not using the Classic ASP.NET AppPool for its Application Pool. 

Failed to generate a user instance of SQL Server due to a failure in impersonating the client. The connection will be closed.

Windows Authentication has not been enabled for the web site.

There was an error trying to connect to the Database Server:
Cannot open database "TestWebsite" requested by the login. The login failed.  Login failed for user 'IIS APPPOOL\Classic .NET AppPool'.

Change the Identity of Classic ASP.NET AppPool to Local System.

There was an error trying to connect to the Database Server:
Could not open new database 'C:\PROGRAM FILES\TELERIK\SITEFINITY3.6\WEBSITES\BUSINESSTEST3\APP_DATA\SITEFINITY.MDF'. CREATE DATABASE is aborted. An attempt to attach an auto-named database for file C:\Program Files\telerik\Sitefinity3.6\WebSites\BusinessTest3\App_Data\Sitefinity.mdf failed. A database with the same name exists, or specified file cannot be opened, or it is located on UNC share. File activation failure. The physical file name "C:\Program Files\telerik\Sitefinity3.6\WebSites\BusinessTest3\App_Data\Sitefinity_log.ldf" may be incorrect. The log cannot be rebuilt when the primary file is read-only

Instead of using the SqlExpress (attached files) option for the database type, use the method described above.

401 - Unauthorized: Access is denied due to invalid credentials.
You do not have permission to view this directory or page using the credentials that you supplied.

Ensure that Windows Authentication has been enabled in IIS and login as Administrator

The account, you have authenticated with, has no permissions to create virtual directories. Please make sure that windows authentication is enabled.

Ensure the web browser is running as Administrator.

Validation of viewstate MAC failed. If this application is hosted by a Web Farm or cluster, ensure that <machineKey> configuration specifies the same validationKey and validation algorithm. AutoGenerate cannot be used in a cluster.

The web server has been altered between page postbacks.  Close the web browser, re-open and try again.

Comments  16

  • michael 06 May

    Excellent post, as usual. Thank you for your work.
  • james peckham 07 May

    Why not just download the 'full site' files and put them into a visual studio 2008 solution? You won't even need IIS then and visual studio should have already installed sql express.
  • hardy 17 May

    Thanks, Gabe. These instructions are very useful and worked flawlessly for a new install of SF on Vista.
  • David Mudkips 02 Jul

    while extremely helpful, your guide is not quite bulletproof. this will fail on x64 systems. here's a link to the missing puzzle piece: http://www.sitefinity.com/support/forums/sitefinity-3-x/set-up-installation/http-error-4-4-17.aspx

    thanks for doing sitefinity's job for them. you should demand monies.
  • Gabe Sumner 02 Jul

    Hi David,

    Don't worry, I'm paid.  :)  I'm a Developer Evangelist with Telerik & Sitefinity.  

    Sorry my guide wasn't 100% complete, I'm glad you found a solution in the forums.  Thanks for supplying a link to the fix!
  • chris emerson 09 Jul

    Argh... I've followed these directions and am still getting the infuriating "Error creating virtual directory telerik/Sitefinity3.6.  Exception details: Unknown error (0x80005000)" nonsense.

  • The Sitefinity installer isn’t being run as Administrator 
    [I right click and "Run as admin"].
  • IIS has not been installed
    [It has].
  • The necessary IIS features have not been installed  
    [ALL IIS features have been enabled]
    .
  • The Default Web Site in IIS has been removed or renamed  
    [Never touched it - "Default Web Site" is there and works for other virtual directory sites via http://localhost/myfolder.]
    .
  • If anyone has any other tips to add to this page please chime in - this is driving me nuts.
  • chris emerson 10 Jul

    Thanks to Mikael's post on this page  http://www.sitefinity.com/support/forums/sitefinity-2-x/installation/cannot-create-virtual-directory-telerik-hresult-x8-5-f.aspx I was able to brute force my way through the 3.6SP2 installer.
    - I created the Virtual Directories manually 1st
    - Ran the installer until the "Error creating virtual directory" error happened
    - ALT-TAB'd to Explorer and copied the installer files to safe directory before the installer rollback deleted them
    - Finished installer (i.e. it rolled back since it failed)
    - Copied installer files back to the install directory
    - Loaded up the site in IE (localhost/sitefinity3.6/projectmanager)

    So I never resolved the problem but I got past it. Of course *NOW* I'm getting this nonsense so I'm stuck yet again! 
    --> "The account, you have authenticated with, has no permissions to create virtual directories. Please make sure that windows authentication is enabled." 



    Good God why does it have to be this hard?!
  • Gabe Sumner 10 Jul

    Hey Chris,

    I'm really sorry you're having so many issues.  A couple of thoughts:

    1.  If you would like, you can ditch the installer and just use the Blank Project method.

    2.  Sitefinity 4.0 (which is still months away from release) will take a vastly different & easier approach to installation.  We're very aware installation is too hard.

    3.  I would double-check the identity used by the IIS Classic ASP.NET Application Pool and ensure that Windows Authentication is enabled.

    There are a lot of security settings that need to be lined up perfectly.  It's a pain, no doubt.  A lot of this is just a confrontation between what Sitefinity is trying to do (create IIS vritual directories) and the default security restrictions that are applied in a consumer OS.

    Feel free to post to the Sitefinity forums.  I'm willing to help here, but you'll you'll have more people (including the Sitefinity tream) reading your posts on the forums.   Hang in there, it gets better after installation.  
  • chris emerson 13 Jul

    Just for the records - the Sitefinity installer worked after a reformat (not that reformatting was fun!).
  • chris emerson 13 Jul

    Just for the records - the Sitefinity installer worked after a reformat (not that reformatting was fun!).
  • johnny 02 Aug

    Reformat.  Classy!
  • harald 02 Aug

    Hallo,

    after I have installed the Package sitefinity 3.6 Trial successfully and generate a test site. When I start the test site the first time after databese settings for short time a message appears "Checking for existing administrators" then a error message appears:

    What's wrong?
    ...

    Parserfehlermeldung: Invalid object name 'sys.procedures'.
    Invalid object name 'sys.schemas'.
    Invalid object name 'sys.sql_modules'.

    Quellfehler:

    Zeile 108:        <clear />
    Zeile 109:        <add connectionStringName="DefaultConnection" applicationName="/"
    Zeile 110:          name="Sitefinity" type="Telerik.DataAccess.AspnetProviders.TelerikRoleProvider, Telerik.DataAccess" />
    Zeile 111:      </providers>
    Zeile 112:    </roleManager>

    What's wrong?

    The environment is:
    IIS 5.1
    SQL Server 2005
    sitefinity 3.6 Trial
  • tonio 13 Nov

    Correct forum link for installing on a 64 bit system is : http://www.sitefinity.com/support/forums/sitefinity-3-x/set-up-installation/http-error-404-17.aspx
  • James 29 Nov

    Hi Gabe!

    Super post, thanks so much!

    I was wondering though if you could please do the same for Windows XP installations please? I don't run Vista but still need a definative guide for XP users.

    Thanks!
    James
  • Kevin Douglas Donahoe 22 Mar

    Wow,

    This was extremely helpful and extremely accurate.

    Thank you
  • Dave 10 Apr

    Why? WHy? WHY wasn't this the installation guide instead??? You just negated a day and a half of playing around with .net., iis7 and sql 2k8 express in 30 minutes... I'm not sure whether to thank you or curse you... :)
Post a comment!
  1. Formatting options
       
     
     
     
     
       
  2. I'm sorry for the CAPTCHA. You have spammers to thank for this: