Whitepaper Setup with multiple websites

Topics: General
Mar 30, 2011 at 8:37 PM

Hi All,

Newby that likes Composite C1 but is struggling with its setup.

We like to have one install of the C1 environment that can manage multiple sites. These sites can be development and production sites (with several different versions) and maybe different clients.

Depending on the version www.website-name.com 's will be redirected to the approriate site dynamically.

We want to use Visual Studio 2010 as our development environment (so no webmatrix!!)

Is there a whitepaper how set this up.



Mar 30, 2011 at 8:56 PM

C1 supports multiple sites by setting a hostname on the site page-node, but has many quirks regarding the url handling of it.

Using the CompositeC1Contrib project this is handled automatically for you. SiteMap.RootNode will for instance point to the actual site page-node in C1 according to the site we're on, and rendering and url-generation is handled accordingly.

This means that the following structure in C1

  • Websites
    • Site 1
      • Page 1
      • Page 2
    • Site 2
      • Page 3
      • Page 4

will end up in the following urls

  • http://www.site1.com
    • http://www.site1.com/page_1
    • http://www.site1.com/page_2
  • http://www.site2.com
    • http://www.site2.com/page_3
    • http://www.site2.com/page_4

There is another discussion on this topic here http://compositec1.codeplex.com/discussions/244563.

Please let me know if you need help and insights to using the CompositeC1Contrib project.

Mar 30, 2011 at 9:13 PM
Edited Mar 30, 2011 at 9:15 PM

Hi Roel,

to be honest we havent done much tooling when it comes to host multiple websites inside a single installation and there is no documentation detailing how to go about it. When that is said we have seen a bunch of Composite C1 installations host multiple sites; www.dhf.dk is hosting some distinct 15 sites with distinct editor groups. www.unipension.dk holds 4 pension fund websites, so it is possible.

With no whitepaper around feel free to ask open or specific questions - I will try to collect what I can find below:

I came across the following related threads:

I think the biggest threat you should be looking for is situations where a resource become shared across user groups - for instance layout template editing, sending newsletters or installing packages - global stuff may be shared across users if you can set up security rules, but this may not be possible in all situations. If you basically need users to have their own site and a private media folder and have all their activities happen below those places, you should be fine though.

I may come of a bit "dark" here - actually I have seen devs create excelent multi site sollutions on Composite C1, so don't despair - just be aware of the weak spots :)

Mar 30, 2011 at 10:05 PM

Hello BurningIce and Marcus,

Thank you for the very quick response. Impressed.

Studying the Composite C1 environment for several days now and the more i look the more i like it. When sites are setup properly (with approriate functions) sites can be automated highly efficiently.

Had a quickscan of the compositeC1Contrib, downloaded the source and tried the compile but lots of errors.

No docs where and how to setup or reference. A compiled.dll would be nice, request from Marcus and me. Newbie remember


Mar 30, 2011 at 10:15 PM

@burningice Let's get the contrib goodies wrapped into a C1 Package asap - people are starving out there ;-)  I will get some 'how to' sent your direction.

Mar 30, 2011 at 10:23 PM

I got alot of "complaints" after the last commit where i added support for MVC rendering. It should be noted that it requires MVC3 to be installed to make it compile, so maybe i should move that out to a separate dll since MVC is not included with the .Net 4 framework and not everyone uses it.

Mar 30, 2011 at 11:00 PM

+1 for separate assemblies. For a C1 Package deployment point of view having MVC3 dependables in a separate package would remove a lot of install drama out there and make the Web Forms stuff reach more people.

Mar 31, 2011 at 4:21 AM

+1 vote on separate assemblies on the Contrib package as well. MVC is still just a dream for me so until that time it's definitely just that much easier not having to be required to use it.

Apr 17, 2011 at 5:28 PM

Starting from the latest check in made today, containing a MembershipProvider, i will be releasing binaries as well in both debug and release mode. Expect to see native C1 Packages to come soon.