Configuration options for multiblogs

Jul 11, 2009 at 7:59 AM

Hey guys,

 

I have been looking at using BlogEngine with the multiple blogs providers provided here.

For starters, great work about bringing mutli blog support to BE.

I have managed to get it going to the SQL provider, however I'm not clear about few options.

I used the provided Readme.html to setup BE and seems to be working.

 

1. Can I ran  multiple blogs blogengine in IIS 6 in such a way that:

a) it runs from the same codebase say C:\inetpub\BE.NET 

b) it doesn't require different code base e.g. BE.NET.forJohnsBlog and BE.NET.for.JakesBlog

2. Without creating different virtual directories in IIS  for each user e.g. /John for john pointing to ~/BE.NET and /Jake for jake pointing to ~/BE.NET 

(the above could be more or less liek 1A)

I currently have it setup with multiple code bases (as in 2, johns & jakes examples), still wondering if that is necessary?

Any help, ideas etc would be greatly appreciated.

cheers,

kamlou

Coordinator
Jul 11, 2009 at 10:29 PM

You can't get away with using the same virtual directory in IIS. They have to be separate applications because BlogEngine.Net keeps most of its data in static variables used throughout the application. So you'd need to setup both a /John and a /Jake virtual directory in IIS. The good news is that both virtual directories can point at the same filesystem directory so that both use the same code (as well as both using the same database).

Jacob

Jul 12, 2009 at 9:05 PM

Jacob,

 

Thanks for the reply. Thats the impression I got after reading your blog about the implementation, but thought I would check.

Would have to create virtual directories programatically. Which doesn't seem very scalable for large installations.

At this point I see that it will be pretty hard to isolate properly blogs (and then users, authors, extensions, themes, etc).

 

Again, thanks for the reply.

 

cheers

Jul 13, 2009 at 10:40 PM

Jacob,

I have another question. Its about authentication. Please bare with me, I've mostly worked with unices thus the uneducated questions.

As above I have my blogs setup, but it would seem that I just need to log into one of them and then I have access to all of them, even though

I have not logged in. Do you know of a way I can isolate authentication on URL basis (in other words have different session data/cookies per url in this case).

 

Thanks in advance,

 

cheers

Coordinator
Jul 14, 2009 at 12:34 AM

Oooo. That's an interesting question. BE.Net uses Asp.Net's forms authentication and that's configured in the web.config file. So if you're serving the code from a single directory the forms name and machineKey values will match and thus authentication cookies will be shared. Role checks should still be separate (if you're using my LinqRoleProvider) but you could easily have someone create a user with the same name and they'd be able to authenticate on one and then have the role permissions on the other. I'm not that familiar with Asp.Net forms authentication so I don't know any way to get two applications to use the same web.config file and still differentiate from each other for membership authentication. You could try setting cookieless to "Uri" but I don't know how BE.Net will react to that.