Creating a public web site with Office 365 : my experience so far…

One of my customer had the following problem : he had an old & ugly public web site written in asp.net. Nobody wanted to maintain this application anymore, but worse than that: the business was unable to easily & quickly add new content and was therefore slow to react.

As a SharePoint guy, my first reflex was to use SharePoint as a web content management tool, but we didn’t have the budget to buy, to set up and to maintain a SharePoint farm.

Moving to the cloud (Azure or Office 365) was the obvious option; Azure didn’t provide any real web content management functionalities so I turned my attention to SharePoint online (the SharePoint component of Office 365).

Office 365 provides both an intranet (several Site Collections) and a public web site (one public site collection).

Branding the public web site is possible by creating a custom master page (don’t try to modify the default master page!); I did it by following this MSDN tutorial  that I recommend . That works very well and you can completely change the ugly look & feel of the default Office 365 public web site.

I was very glad to be able to achieve it for my customer for only 25 €/month; I also noticed that the publishing features were available, so I thought I could leverage the very handy Page Layout stuff until I discovered in the Office 365 forums that even if they work the publishing features of Office 365 are not supported on the public web site !!! And an Office 365 program manager confirmed it afterwards at the SPC 2011.

That was a real problem for me –> I decided to leverage the SharePoint Foundation wiki pages (very flexible) with web parts (web parts properties are now versioned on SharePoint Foundation 2010)

I had to remove all publishing controls from my custom master page.

Other huge problem : we cannot remotely debug an Office 365 SharePoint application (this didn’t surprise me)

–>I decided to create the 4 following environments :

DEV environment :

my HyperV virtual machine, with Visual Studio 2010 & TFS source control. I always start by using the SharePoint 2010 Microsoft Information worker VM. In my Visual Studio project I have a mixture of CAML Code & sandboxed .net code that I deploy & debug on my local SharePoint.No problem so far.

I quickly discovered that I couldn’t create a form that would send information by e-mail because one of the methods that is explicitly blocked in the sandbox is SPUtility.SendEmail. As far as I know, there is no alternate method provided in SharePoint.

TEST environment  :

I created a (free) trial Office 365 account and I manually uploaded & activate my sandbox solution over there. Here I noticed several problems :

1..Net Code that worked very well in my on premise sandbox didn’t always work in the cloud. I was surprised; I even created an empty web part that didn’t work in O365…and other people experimented the same issue.

2.Sometime I couldn’t even update my solution package in the cloud, it looks like the User Code Service couldn’t unpack and deploy my solution package.Even deploying the solution to another (private here) site collection didn’t work (which didn’t surprise me : the User Code service is Shared across the farm).

STAGING environment

I created another (free) trial Office 365 account with another public site collection where I deployed  my solution package in such way that some key beta testers could test it and report some problems & suggestions.

PRODUCTION environment

I created yet another (free) trial Office 365 account where I deployed the tested solution package; eventually I paid the subscription.

 

My advices : the SharePoint component of Office 365 looks promising even in public web sites where the publishing features work, but are not supported; stay away from .Net code as much as you can and code in CAML or use the (javascript) client object model. Don’t try to upgrade your sandbox solutions too often. As usual, try to use out of the box features as much as possible (like XsltListViews), leverage SharePoint Designer 2010 and the data view web part.Always test your application with anonymous and authenticated users : indeed some list views don’t work as expected with anonymous users (specially when you specify a group by statement and a sort statement). And more than on premise : test, test, test…

Advertisements

2 responses to “Creating a public web site with Office 365 : my experience so far…

  1. I’m just starting to learn SP and starting with 2013 online, so Office 365. Of course, I’ve been asked to make a public site, and running into problems doing what web pages say to do. I get the feeling that, as you said “publishing features of Office 365 are not supported on the public web site !!!” might be the problem.

    I see no way to edit content types, and when i create a layout page, the only types I associate with the layout are from the group “Web Pages Content Types”, which I cannot seem to find a way to edit or add to.j

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s