Multiple Composite C1 on one development server

Topics: Feature requests, General, Troubleshooting
May 3, 2011 at 7:00 PM

Hi guys,

I have a problem deploying multiple composite c1 on my dev machine, apparently I'm deploying multiple web applications that contains composite c1 cms for every web application. Im deploying c1's like this:

http://devmachine/C1project1, http://devmachine/C1project2 and so on...

my problem is when I'm configuring the C1 to create a 'Website' and add pages to the 'Website' the structure became like this

http://devmachine/C1project1/default.aspx for the homepage BUT...

http://devmachine/C1project1/default/Page1.aspx, http://devmachine/C1project1/default/Page2.aspx and so on for adding pages and publishing them.

Is it really like this or am I just missing something.

 

Regards,

Arnel Gracela

May 3, 2011 at 8:08 PM

The URL "http://devmachine/C1project1/default/Page1.aspx" consists of http://HOST/WEB-APP/CompositeC1Path" - the host and web-app parts are something you control.

The CompositeC1Path part - like "/default/Page1.aspx" is too verbose and we are currently working on changing this. The reason it is there is that having the website homepage name in the url ensures you can have multiple websites in 1 Composite C1 solution, but it is too verbose. We are also working on making the .aspx part optional. In short we are working on making "http://devmachine/C1project1/default/Page1.aspx" become "http://devmachine/C1project1/Page1".

Until we release that: I believe you can use http://compositec1contrib.codeplex.com/ and get nice clean url's today - @burningice is responsible for that project should post about it here any second now ;-)

May 3, 2011 at 8:41 PM

heh.. well, i was kinda waiting for Arnel's response... but its true, with the Contrib project you can get tomorrows technology today! :)

It will change http://devmachine/C1project1/default/Page1.aspx into http://devmachine/C1project1/page1 and it has been tested to work fine with installations in virtual directories.

May 4, 2011 at 2:08 AM

Thanks guys, sorry for late response, had to catch some sleep because of time difference. That would be very cool, so if i get the current release at http://compositec1contrib.codeplex.com/ i will be getting a cleaner URL right, I'll test it today.

 

Regards,

Arnel Gracela

May 4, 2011 at 3:24 PM

Hi again guys,

can you guide me on how i can use this contrib version, i'm more on deployment than development.

Regards,

Arnel Gracela

May 4, 2011 at 3:40 PM

You should be able to just install it as a package as described here http://compositec1.codeplex.com/discussions/256316. Otherwise if you can either send me a zipped file of your project or give access via some kind of Remote Desktop i can help you trough it.

May 4, 2011 at 4:13 PM

hi burningice, Thank you very much for the link. i'll try the instruction first, seems very developer friendly, but if i can't get it right is it alright to ask you again? on rdp maybe?

May 4, 2011 at 4:21 PM

@arnelgracela try installing the package Contribution.CompositeC1Contrib.Core - burningice's offer is very kind, but I'd like to see people be able to get up and running on their own, so I suggest you resist accepting his help (at least for now) and instead install the package - please post here if anything in that experience is less than perfect so we can fix it.)

May 4, 2011 at 4:23 PM

good point :)

May 4, 2011 at 4:39 PM

actually yes, that's why i said to try it first :), thanks for very quick response guys. will get back very soon.

May 4, 2011 at 4:52 PM

hi again, should I be putting an assembly like dll to bin folder? I'm getting the idea that when I put the entries on the web.config it should be referenced to a dll on bin folder. Or I'm just used to other sites created in VS.

May 4, 2011 at 5:39 PM

hello guys, I think I'm having trouble compiling the c1ontrib.core, I'm building the solution, but i'm getting weird errors like this:

Error 1 'System.Web.Mvc.MvcHtmlString' does not contain a constructor that takes 1 arguments D:\compositec1contrib-66556\Mvc\Web\Mvc\C1HtmlHelper.cs 24 24 Mvc

first error is it ask for an assembly reference system.web.routing so i added it, then it asked to add an assembly reference system.web.abstractions so I added the system.web.abstractions.dll too, then I'm stuck with the error above, additionally another error along with the one above is:

Error 2 The command "copy "D:\compositec1contrib-66556\Core\bin\Debug\CompositeC1Contrib.dll" "D:\compositec1contrib-66556\Core\\Package\Bin" /ydel "D:\compositec1contrib-66556\Core\\Package\Package.zip" "D:\compositec1contrib-66556\Core\\..\References\7za.exe" a -tzip "D:\compositec1contrib-66556\Core\\Package\Package.zip" -r "D:\compositec1contrib-66556\Core\Package\*" -x!*.svn" exited with code 3. Core 

Regards,

Arnel

May 4, 2011 at 5:40 PM

You should just install the package (shout if that doesn't ring a bell). No ~/bin or web.config work needed, the package installation handle this for you.

May 4, 2011 at 5:45 PM

Sounds like you have been trying to download and compile from source... the easiest is of course to use the package if you're not familiar with dll files, compiling and such.

Second option is to download the source but use the pre-compiled dll files located in /bin/release or /bin/debug and do the configuration to web.config manually. This give you more control over configuration and lets you run with a debug-build which can be handy in situations where you need debugging.

The third option is to download and compile the source. This requires to get the newest versions of some dll-files that we need for referencing during compilation. Only do this if you need to change the actual source code for tweaking or optimizations or adding new stuff. Since i'll be shipping every check-in with compiled binaries you would almost never go for this option.

May 4, 2011 at 6:03 PM

@mawtex, sorry I don't quite get how to install the package, so i used  the 2nd option burningice mentioned, but isn't working on my test c1 project, so i tried compiling the code but stuck to errors. I would like to try the install procedure, I followed the link about installing the package above but only says "install the package".

Regards,

Arnel

May 4, 2011 at 6:28 PM

Prerequisites:

  • Ensure that any changes you have made in the attempt to install the contrib dll is undone.
  • Ensure you are running Composite C1 2.1.1 (in the C1 Console, see Help | About).

Installing the package

  1. Launch the C1 Console, browse to System | Packages | Available Packages | Contribution.CompositeC1Contrib
  2. Select "Contribution.CompositeC1Contrib.Core" and execute the "Package Info" command
  3. Click the "Install package" button and complete the wizard.
May 4, 2011 at 6:45 PM

Thank you very much guys, works perfectly. I will be applying this to my other c1 projects, hope to hear from your again if i ever had a problem again. 

Regards,

Arnel Gracela

May 4, 2011 at 6:58 PM
burningice wrote:

heh.. well, i was kinda waiting for Arnel's response... but its true, with the Contrib project you can get tomorrows technology today! :)

It will change http://devmachine/C1project1/default/Page1.aspx into http://devmachine/C1project1/page1 and it has been tested to work fine with installations in virtual directories.

hi burningice, seems i made the nicerurl work but apparently isn't the way stated above, our site is behaving like this:

from

http://devmachine/C1project1/default/Page1.aspx

TO

http://devmachine/C1project1/default/Page1

and not

http://devmachine/C1project1/Page1, this would be a better looking url though. How can I make it like this, its only showing on a virtual directory scenario, working perfectly on non virtual directory deployment.

 

Regards,

Arnel

May 4, 2011 at 7:08 PM

can i get you to move this issue to http://compositec1contrib.codeplex.com/ and we'll take it from there... i'll also fire up my dev machine and try to reproduce the issue.

May 4, 2011 at 7:13 PM
Edited May 4, 2011 at 7:14 PM

yeah sure, thank you, im using IIS7 on windows server 2008 btw, and my sites are on web application like 'site1/webapp1'.

Regards,

Arnel Gracela