Upgrading to BlogEngine.NET 2.9

Recommended Path to Upgrade

The cleanest way to upgrade to v2.9 is to start from a v2.9 installation, and then copy your existing data and settings into v2.9. The upgrade steps follow.

1. Backup

Make a full backup of your existing BlogEngine installation.  This is very important.  If anything goes wrong, you can always restore to your backup.

2. Install v2.9

Install v2.9 on your computer, in a new folder.

3. Web.config file (for non-database installations)

It is recommended to use web.config that comes with new installation, and then copy any modifications if needed from your blog's web.config

4. Web.config file (for database installations)

You need to modify connection string to point to your database and switch from XML to DB provider in these 3 places:
defaultProvider="XmlBlogProvider" -> defaultProvider="DbBlogProvider"
membership defaultProvider="XmlMembershipProvider" -> membership defaultProvider="DbMembershipProvider"
roleManager defaultProvider="XmlRoleProvider" -> roleManager defaultProvider="DbRoleProvider"

(This is for SQL server database, for other databases use files in the "Setup" folder. You might need to update with latest changes for specific database using SQL server configuration file as a template)

5. Database Upgrade Script (for database installations)

To create SQL server database, use /Setup/SQLServer/MSSQLSetup2.9.0.0.sql
To upgrade from 2.8, use /Setup/SQLServer/MSSQLUpgradeFrom2.8to2.9.sql

(For other databases you might need to update script based on SQL server or wait for someone from community to update and submit a patch)

6. App_Data folder (for BOTH database and non-database installations)

Delete from BlogEngine.NET 2.9 installation "App_Data" folder all except "/App_Data/labels.txt"
Copy your existing blog's App_Data folder content to new v2.9 directory

Note: This step should still be performed even if you are using a database since even with a database, the App_Data folder is still used for storing certain items such as files, images and some other small miscellaneous files.

7. Scripts folder

Move your custom scripts from 2.8 /Scripts to 2.9 /Scripts

8. Content folder

Move your custom styles from 2.8 /Content to 2.9 /Content

9. Theme folder, Robots.txt & Other Custom Files

If you have a custom theme, copy your custom theme folder into the v2.9 "themes" folder.  Similarly, if you have customized the robots.txt file, or if you have any other custom files/folders, copy those into the v2.9 folder you have been working on.

10. Deploy to Web Server

Because you will have files on your web server that no longer exist (or have been moved) in v2.9, it is best to delete all of the BlogEngine.NET files and folders on your web server, and then upload the new v2.9 files and folders you prepared in the previous steps.

Please make sure you have a backup of everything you will delete (see step 1).

After you have deleted the BlogEngine.NET files/folder off your web server, upload the v2.9 files and folders you prepared in the previous steps.

11. Check App_Data folder Write Permissions

If you deleted the App_Data folder in the previous deployment step, you may need to double check that Write permissions are still set on the new App_Data folder you uploaded.  Even if you are using the Database storage option, certain items such as files & images you include in your blog posts are still saved in the App_Data folder.  BlogEngine.NET can only save files in the App_Data folder if Write permissions are enabled for the ASP.NET account.

Updater utility

You can also use updater utility to automatically run most of this process, it can be downloaded from here.

FAQs & Troubleshooting

Requires .NET framework 4.5

Requries full trust in IIS

Requires Razor (web pages) for .cshtml files

Last edited Dec 31, 2013 at 12:17 AM by rtur, version 6

Comments

No comments yet.