Contents tagged with Website

  • How I migrated my blog to Orchard on Windows Azure Web Sites

    Tags: Website, Orchard, Windows Azure

    A couple of days ago I started the migration of my blog to the new and shiny Windows Azure Web Sites (AWS - I don't think that acronym is a co-incidence) and the Orchard CMS platform. The whole reason behind doing this migration is that I felt the need for a more modern (and stable) platform than the one I've built from scratch, years ago, and of course that I want to fiddle with some new toys. So, here is a short story on how I did the migration.

    Setting up Azure Web Sites

    Create a new AWS siteThe first thing was to set up a new Azure Web Sites site. This is done from the new metro-styled Azure portal at and all you need to do is click NEW in the lower left corner and select Web Site and then From Gallery. This option allows you to quickly create a web site and at the same time install an App on that site. I chose Orchard CMS, but you can choose from a lot of apps here such as Wordpress, Umbraco, Drupal, Dotnetnuke etc.

    The reason I chose Orchard is that I wanted a modern and top of the line CMS and that I've been following that project since the Oxite days. It's based on .NET which also makes it very easy for me to extend it.

    Once the App is chosen from the AWS Gallery you need to choose a name ( and a Region where to host it. Then you just apply your configuration and wait for a couple of minutes for the web site to spin up.

    Using SQL Azure

    Orchard allows you to choose from using the embedded SQL or using a separate SQL instance. I decided to use SQL Azure. I did this since that makes it easier for me to move the data from my development environment back and forth and since the Azure Web Sites is in a preview mode - you never now if your data will be gone one day :-)

    Configuring Orchard

    Once the Azure Web Site is up you will be presented by the Orchard start screen which asks you for information on how to set up Orchard. You enter username and password, choose which SQL to use (embedded or separate) and you will be asked for a recipe (for which I chose the blog one). Click Ok and wait a minute or two and your Orchard site will be prepared.

    Migrating content

    The first thing I did was to start migrating content - the blog posts and all associated images. Since I had my own home brew blog CMS I created a small tool that exported all the data from my old site to the BlogML format. That gave me a 7MB XML file with all posts and comments. The next thing I did was to move all the images from the old system into Orchard. This can be done in Orchard using a very convenient method where you upload zip files with your images. I had some issues with the file size, so I had to move it in smaller chunks of max 5MB at a time. The URLs for my media did change when I uploaded the images and files, so I used a text editor and replaced all the paths in the BlogML file to the new paths.

    BlogML importOnce all media and files were uploaded I started importing the BlogML data. I added the BlogML module to Orchard which extends the admin interface with BlogML import and export functionality. I had to split my BlogML file into smaller chunks, since it would time out on me if I used to many posts/comments at a time. One reason that I got a lot of timeouts was that I had a lot of comments (approved and unapproved) in my BlogML file and all those were verified using Akismet spam check during the import. The BlogML import feature uses the Orchard Alias function, so all URLs are preserved.

    Other Orchard Modules

    Once I had all my content in Orchard I added a couple of extra Modules to Orchard. These are the ones that I have added:


    I have also added a couple of search/index modules


    There is only one problem right now with modules in Orchard on AWS (I think it's related somehow, since I don't get the same issues/timeouts in my dev env), is when you activate/install a Module your site becomes unresponsive for 5-10 minutes.

    And a custom Theme...

    The only customization so far is a custom theme that you can see right now. It's based on the TimeMachine Theme.

    Going Live

    Once the site was all ready I updated the DNS (which I have in Office 365) with a CName pointing to my Azure Web Site. But in order to get AWS to accept my domain name I needed to add a hostname to the web site. Unfortunately this feature is not available when you're using the Shared Web Site Mode, so I had to switch to the Reserved Mode - which of course starts the billing clock...

    Reserved Mode

    Then I did some final configurations like mapping my FeedBurner feeds etc and my site was up and running.


    A quick walkthrough on how I got my blog moved to Azure Web Sites, SQL Azure and the Orchard CMS. As you just read it was an easy ride, with the only obstacles that I had to upload data in chunks and could not use the Shared Web Site Mode. Now let's hop that AWS don't have to many hiccups...

  • Now running on Azure Web Sites and Orchard

    Tags: Website, Personal, Office 365, Windows Azure

    Azure Web SitesYES! I'm finally alive with a new hosting provider - this time it's Microsoft (who could have guessed that!). Thanks to the just released Azure Web Sites I have now moved my blog from my old custom blog implementation (that has been a fun project though), to running Orchard on Azure Web Sites using SQL Azure. This finalizes my cloud migrations - last year I moved e-mail and everything but the site to Office 365 and started with a hosted service for this site, but for running this little blog that was a bit to expensive (you're not clicking the ads enough).

    You have to bare with me for a little while until I get everything spinning. I apologize for any inconveniences with updated posts in your blog readers and other physical or mental illness caused from this. All blog posts should have been migrated fine (I know some stuff haven't got correctly through) keeping the old URL's and everything. I built a quick Orchard theme and haven't tried it in obscure browsers yet. Also Azure Web Sites is only in preview, so I expect it not to work 24/7 (my previous hosting provider didn't have that either though...).

    If you do find something peculiar, don't hesitate to comment on it...

    [Update] There seems to be an issue with Azure Web Sites/Orchard when I'm updating or adding modules, which makes the site go down for a couple of minutes. Hopefully I won't do this as often though...

  • What am I writing about?

    Tags: Personal, Website

    I have recently seen Wordle images here and there on blogs and sites and I could not resist creating one of my own site, to see what words do I write often here.

    Wordle of

    As you can see it's lot of stuff about Microsoft (surprise), SharePoint, Visual Studio and .NET. I also seems to like a lot of things.

    Have you created a nice Wordle?

  • New design

    Tags: Personal, Website

    Welcome to the new design, I hope you like this one better than the previous. Personally I got tired of the old one and decided to make a change. Please leave a comment if it behaves bad or does not look good on any weird browser (I've tried it on FF3b4, Safari and IE8b1).

    Alicia and Wilma Tomorrow I'll be back for work after a month and a half of parental leave, which was so nice. I wish it had lasted longer, but I will be home with my daughters Fridays throughout the rest of the spring...

  • Save The Developers!

    Tags: Internet Explorer, Internet and the Web, Website Due to the large amount of users still using Internet Explorer 6 a campaign has started to save developers from having to making specific adaptations to IE6 -

    savethedevelopers.orgThe Save The Developers site contains a script that anyone can place on their web site and it will show a warning to IE6 users and urge them to upgrade to any of the four major browsers; Internet Explorer 7, Mozilla Firefox, Apple Safari or Opera.

    Internet Explorer 6 still represents 31%, almost one third, of all browsers according to TechCrunch, while this site has about 15% (which I find quite high...).

    Join the cause, add the script to your site, recommend people, friends, parents, customers and colleagues to upgrade.

    Via LiveSide.

  • Snap Preview Anywhere updated

    Tags: Internet and the Web, Scripting, Website

    The Snap Preview Anywhere (SPA), as I earlier removed from this site, has been updated with some new functionality to make it better for site owners who don't want their homepages cluttered with previews or users that do not want to see the previews.

    As a site owner you can now put up an option for your users to turn on or off the SPA:

    SPA Options

    And there is also an option to have the preview to trigger on an icon instead of the whole link:

    One step forward, and I really like that the SPA team has listened to the community. Maybe the SPA will be back on my site in the future...

  • Snap preview removed

    Tags: Personal, Internet and the Web, Website

    Scott Watermasysk led med to this article by Nick Wilson on why you should not have Snap Preview Anywhere on your blog and I'm now joining the bloggers who remove the preview features.

    I agree with Nick on that the preview is pretty annoying and that it's not problem free (more than often you have to click more than once on a link).

    Byt why did I put it up in the first place? This blog is not just a blog for me I use it as a testing platform for different kind of techniques, hypes etc - and to have fun. I will still try on new interesting stuff and I may also remove old uninteresting stuff.

  • Preventing comment spam using LinkSleeve

    Tags: .NET, C#, XML, Website

    I have a lot of problem with comment spam on the blog as well as spamming on the trackbacks and the problem is spread widely over the blogging world. A lot of you turn off comments or have registration or other methods to get rid of the comment spamming.

    LinkSleeve (SLV - Spam Link Verification) is a link spam solution that checks a text for well-known URL's in a text and tells if it contains any known spam addresses. This service is provided via an XML-RPC service without any licensing.

    This service is ideal for you out there who have built their own blog application, and here is a simple implementation of it in C#:

    public class LinkSleeve{        //
        public static bool IsSpam(string text){
            ILinkSleeve proxy = (ILinkSleeve) XmlRpcProxyGen.Create( typeof(ILinkSleeve) );
            return proxy.Check(text) == 0 ? true : false;      }
        public interface ILinkSleeve{
            //INFO: must be public for .NET 2.0 support
            int Check(string text);

    The Check method returns true if the text seems to contain spam and otherwise false.

    To be able to use this you need to have XML-RPC.NET library.

  • Updates on this blog

    Tags: Website

    I have made some updates to this site, the most noticeable are the new addresses (URL's) to the posts which now should be more descriptive than just an id-number. The permalinks in the feeds should be the same though.

    If you notice anything annoying or wrong, please leave a comment.

  • Comments now working

    Tags: Website

    The comments on this blog should now be working. I had some glitch in my spam detection, which should now be fixed.

About Wictor...

Wictor Wilén is the Nordic Digital Workplace Lead working at Avanade. Wictor has achieved the Microsoft Certified Architect (MCA) - SharePoint 2010, Microsoft Certified Solutions Master (MCSM) - SharePoint  and Microsoft Certified Master (MCM) - SharePoint 2010 certifications. He has also been awarded Microsoft Most Valuable Professional (MVP) for seven consecutive years.

And a word from our sponsors...