I made the leap and upgraded my blog to Community Server (CS) 2.0. It took about 4 hours researching, downloading, uploading, converting and fixing.
I couldn’t find a way to directly upgrade my .Text Version .95 directly to CS 2.0, so I decided to first upgrade from .95 to CS 1.1, then use the standard upgrade path from CS 1.1 to CS 2.0. Here is what I did in detail:
- Downloaded CS 1.1.
- Created a test IIS website to host my new site, and a new empty database.
- Read through the CS 1.1 Readme file and created a CS 1.1 Database. For some reason I kept getting SQL errors when using the wizard, so ran InstallCommon.sql, InstallMembership.sql, InstallProfile.sql, and InstallRoles.sql myself. I then rerun the wizard and it finished.
- Finished the CS 1.1 Readme file instructions.
Special Note: My .Text install used a single site configuration, meaning my blog was directly off the root directory. There are ways to tweak CS 1.1 to also have this, but because we are directly upgrading to CS 2.0, you don't need to do this. We will attack this at the end.
- Verified that the installation worked by browsing to my CS 1.1 default page.
- Backed up my CS 1.1 database, and .Text database.
- Downloaded and ran Kevin Harder's DotText-CS-Converter Utility (Version 2.2).
- Read the utilities "READ_ME_FIRST.HTML" and followed it to the "T".
- I got an error that “IsActive” column doesn’t exist, but all you have to do is add that bit column to your blog_config table and make sure it gets populated. He explains this in his blog post.
- Tested my CS 1.1 website and verified all my old posts were showing up.
- Backed up my new CS 1.1 database.
- Downloaded the Community Server 2.0 Web Installer to upgrade from CS 1.1 to CS 2.0.
- Again, read and completed each step of the the Readme file.
- Tested my (now) CS 2.0 website. Keep in mind my http://www.scottelkin.com site is still working and pointing to the scottelkin database. My test site is working at http://localhost:81 and mapped to my temporary scottelkin2 database.
- Backed up my CS 2.0 website and CS 2.0 database.
- Now I want to move my blog from where it is by default:
and switch it to the root at:
This will mirror my .Text installation and make sure that all old links to my site don't break.
- For this, I followed Dan Bartels – Blogging At the Root.
- The one question I was unsure of was what my “defaultApplicationKey” was. Because I had tested my installation prior and saw “blog_0” in the querystring, I guessed that and was correct. All the other settings were by the book.
- At this point, I decided to make my site live. I restored my scottelkin2 database into my scottelkin database. Funny enough, I had never tried that before. It just took me actually reading the column headings of the restore dialog and it went very smoothly. I had to make sure it showed “scottelkin2_data” was being restored into “C:\data\scottelkin_data.mdf”.
- I then stopped the WWW Publishing Service, renamed my live site to “scottelkin_old” and changed the new one to “scottelkin”.
- Because I changed databases, I had to update my web.config to point to the new one.
- I also changed my SiteURL in the cs_Sites table to my fully qualified “www.scottelkin.com”. I doubt that mattered, but did it just in case.
- At this point my site was hanging externally, but worked locally. This was caused by my ISAPI_Rewrite extension I installed to rewrite all http://scottelkin url’s to http://www.scottelkin.com. Community Server was rewriting all http://www.scottelkin.com url's to http://scottelkin.com, then the extension would re-write them back. Ouch. When I nuked that, all worked fine, except now Community Server was re-writing to scottelkin.com which I didn't want.. This was why I was using the extension to begin with, as Google will rank your www and non-www url’s separately, yielding lower PageRank all around.
- After a little hunting, I made a switch in the cs.config file and now all url's correctly point to my www domain.
And now to start customizing…