Renewed as a SharePoint Server MVP

Like many of my colleagues in the SharePoint community, October 1st is the day I put all my rules about reading email aside: MVP renewal day! As this was my first renewal, it was extra special seeing the “Number of awards” on my profile page increase to 2. It’s official: I’m not a newbie anymore.

First and foremost I really want to thank my employer Xylos for supporting my community activities in such a fantastic way. I’m privileged to work for a company that not only values my contributions to the worldwide SharePoint community but also actively supports them in a way that not many companies would.

Looking back at the events I presented at this year also makes me want to thank all my friends in the SharePoint community for having me speak at their events and for being such an awesome bunch altogether. And of course I also want to thank my wife and daughters for putting up with all these trips.

A special thank you goes out to the organizers and fellow speakers of all events I did in the last 12 months:

  • SQL Server Days Belgium
  • SharePoint Saturday UK
  • SharePoint Saturday Stockholm
  • SP24 Conference
  • SharePoint Saturday Belgium
  • SharePoint Saturday Netherlands
  • SharePoint Saturday Oslo
  • SharePoint 2013 for the IT Pro Moscow
  • ITPROceed Belgium
  • SharePoint Saturday Jersey

In a few weeks I’ll be going on my first MVP Summit. I’m pretty excited about going, especially because it’s my first trip to the States – No, I never made it to the SharePoint Conference unfortunately. The Summit itself is under strict NDA so I won’t be discussing much in public however.

Moving to WordPress with SQL Azure (Part 3)

In this series I’m showing you how to move your MySQL-powered WordPress blog to SQL Azure-powered backend. The first post talked about setting up the new platform, the second post was about moving your data and settings. This post will show you how to manage the infrastructure side of things: Microsoft Azure and DNS.

Step 1 – Move your custom domain name in Microsoft Azure

Now that I created my new blog I have two WordPress sites running on Microsoft Azure. Sorry for the “security by obscurity” in these screenshots by the way :)

What we want to do now is tell Microsoft Azure that traffic for my thomasvochten.com website now has to go to my new website. To do so, select your old website and click on the “Manage Domains” button underneath the page:

In the next screen, choose your domain and click the remove button:

Take a mental note of the IP Address mentioned at the bottom of the dialog box.

Before we add that domain back to your new site we must make some DNS modifications.

Step 2 – Verify domain ownership (again)

In order to add our custom domain to our new website we must be able to verify ownership to Azure again. Go to your DNS provider and add the following verification record to it:

  • Type: CNAME
  • Name: awverify.www
  • Alias for: awverify.www.yourwebsitename.azurewebsites.net
  • TTL: 1 hour

You might want to create another verification record without www too:

  • Type: CNAME
  • Name: awverify
  • Alias for: awverify.yourwebsitename.azurewebsites.net
  • TTL: 1 hour

If your site was already hosted at Microsoft Azure you could already have these records. In that case, just edit the aliases to point to the new website you created.

When you created this record wait a few minutes and go back to the Microsoft Azure management portal. Select your new website, click “Manage Domains” once again and add your custom domain:

In case you wonder: I’m using DNSimple for all my DNS management. It’s a brilliant site that focuses on just one thing: DNS. They offer great service and unrivaled DNS management capabilities. It costs me something each year but the benefits greatly outweigh the costs. If you subscribe via the link above, I get one month of DNS hosting for free BTW J

Step 3 – Making the switch, aka DNS

Both my old and my new website were hosted at Microsoft Azure. The beauty of this is that I don’t have to make any changes to DNS at all. The external IP address of both my sites is the same. If you’re using another hosting provider or did not get the same IP address from Azure, you have to change the A records for domain.com and www.domain.com to point to your new external IP address. In DNSimple that’s, well… simple!

Step 4 – Modify your site URLs in WordPress

Now is the time to tell your new WordPress site about your custom domain. Go to Settings, General to make this modification:

Your new site should now be reachable via your custom domain name again – be sure to test this! I disabled my old site to make sure I was arriving at the right place:

If you still arrive at the old site, you’ll get this one:

If everything went well, your new site is now up and running. After a few days, if everything runs fine, you can delete your old site from your Azure subscription and remove the accompanying ClearDB MySQL database.

Moving to WordPress with SQL Azure (Part 2)

In my earlier post I showed you how to configure a new WordPress site with SQL Azure. This post will show you how to move your data and your settings across.

Step 1 – Migrating your Data

Getting your data across to your new WordPress site is easy. WordPress has an Export/Import plugin that you can use. Open the administration site, choose Tools and then Export:

Next, you can choose what to export – that will probably be “All Content”:

Save the resulting XML file so we can import it into your new site via Tools, Import.

During the import process the wizard will ask you to map the original author to an author on your new blog. That’s it – you’re done!

Step 2 – Install & Configure Plugins

After you’ve imported all your content take a note of all your plugins and install them on the new platform. The plugins I use are still the same as last year, except for the “BackWPUp” plugin because I’m now backing up my site via the Azure provided tools. Go through the settings of each plugin and make sure you configure them exactly as in your old environment. Some plugins offer export/import functionalities to make your life easier.

While you are there you might as well go through all of your WordPress configuration pages one by one to make sure everything is set like it should be. One warning though: don’t change the “WordPress Address” & “Site Address” in “General” yet because that will probably mess up things. We will change them later in the process.

One of the most important settings you do have to check are the PermaLink settings. If you don’t configure them correctly all links to your pages in search engines and bookmarks will break. I don’t have to mention that’s not very good for your SEO performance :) I’ve got mine set like this:

Step 3 – Install & Configure Themes

Depending on the theme you use you can install it again via the built-in Themes configuration pages or you can just copy your existing folder structure to your new blog via FTP. That’s what I did, because I made some manual changes to my theme files.

Fire up your favorite FTP client (FileZilla in my case) and connect to your old blog. While you’re there, it might be a good idea to download your complete blog file and folder structure to your harddrive for backup purposes. Next, connect to your new blog and upload your theme folders to wp-content/themes:

Next go to the Themes management pages and select the theme you just imported. With a little bit of luck your site now looks exactly the same as it did before.

You now might want to check if your custom Menus (if any) need to be configured.

Next be sure that you configure all your Widgets as on your old website. I opened both sites side by side to do so. This is a little bit of manual work…

In the next post I’ll show you how I reconfigured Microsoft Azure to put my new site into production and how to flip the switch from a DNS perspective.

Moving to WordPress with SQL Azure (Part 1)

A little over a year ago, I moved my blog to Microsoft Azure. Although I was very happy with the switch, there was still one thing that annoyed me big time: it was still powered by MySQL. That in itself is not much of a problem, but since my database has grown beyond the free quota provided by ClearDB, I finally had an incentive to move away from them. Why would I pay a monthly fee when I could get a much bigger SQL Azure database for free?

Step 1 – Creating a SQL Azure Database Server

Before you can start using SQL Azure, you have to create a database server. That sounds complicated, but it absolutely isn’t. Just browse to the Azure Management Portal, select “SQL Databases”, “Servers” and then “Create a SQL Database Server” – like this:

Next, fill in the necessary details like your subscription and the login and password for the system administrator account. Write those down somewhere – we’re going to need that again in just a few minutes.

After that you’ve got yourself a brand new SQL database server running in Azure!

Now the cool thing about that is that you can connect to it with SQL Management Studio. This is how that looks – with not much to see for now because we did not create a database yet:

Step 2 – Creating a new WordPress site by Brandoo

Even if you have an existing WordPress blog, the simplest way to move to SQL Azure is to create a new WordPress instance and move all your content & settings over afterwards. My blog is already running on Microsoft Azure, which makes the whole provisioning process a breeze. I’ve seen solutions that involved installing WebMatrix on your pc, creating a local WordPress site with a special abstraction plugin and then move that to your hoster via FTP. That works, but this one is much simpler! I’m not that much of a developer so not having to install any of those fancy tools is a plus for me.

Go to Microsoft Azure and choose to create a new website from the gallery. Go to the Blogs category and choose “Brandoo WordPress“:

That template already contains the necessary plumbing to abstract the database layer away from WordPress so it can talk to SQL Server. It asks you for a couple of parameters and you’re good to go. First, choose your website URL (we’re going to change that later on), choose to create a new dedicated database for your blog and give it a username and password:

 

Next, specify your already created database server to host this database on:

Click Finish and we now have a SQL Server, a database and a WordPress site!

 

When you refresh SQL Management Studio, you’ll see that your database and login has been created:

Finally, browse to your azurewebsites.net site to start the WordPress installation process:

Once that’s done you can login to your WordPress site and start updating to the latest version. In SQL Management studio you can now see that WordPress has created some tables for you:

That’s it for now, your new WordPress blog runs on Azure Websites and SQL Azure! In the next post we’ll discuss how to move all your content to your new site, configure your plugins, maintain your existing URL’s and how to flip the switch to release your SQL Azure powered blog to the wild.

Microsoft MVP 2013 for SharePoint Server

A very unexpected mail arrived in my inbox yesterday:

MVPMail

I must admit I had to read it twice before it dawned on me. I’m very honored to been given this MVP award for my community contributions. My main interactions with that community happen through public speaking so I especially want to thank everyone who invited me over to come and speak at their events! Additionally, my gratitude goes out to my employer Xylos for letting me do these things, to Microsoft and to the awesome BIWUG crew that got me into the community in the first place.