This project is read-only.
214

Closed

Multiple blogs in one BlogEngine.NET instance

description

Please vote for support of multiple blogs in one BlogEngine.NET instance.
Closed Jun 27, 2011 at 10:57 PM by BenAmada
Multiple blogs is now supported in BE 2.5. If you have any suggestions for features that can be added to the new Multiple Blog support, please open a new Issue for that. Thanks.

comments

MathLionSoft wrote Jul 5, 2007 at 9:38 PM

I voted for this as I would like to see it. I did put it in issue tracker myself as I saw it in RoadMap for future, so I knew it was being thought about adding it. I just wanted to vote to show there is interest in it.

madskristensen wrote Jul 15, 2007 at 1:12 PM

This is one big task :) Let's see what we can do for the BlogEngine 1.2 release

Hessner wrote Jul 15, 2007 at 10:50 PM

A big task, I agree - and a major step forward for a wider use of the BlogEngine - hope you agree...

calbert wrote Jul 16, 2007 at 3:19 PM

I implemented this for myself using a custom Sql Provider and modified database schema to include a Sources table, which is referenced by the posts and pages tables. My provider accepts a sourceName value and all the stored procedures use sourceName to lookup and retrieve proper records. The only thing with this approach is that you would need separate webs for all your blogs rather than having them in one web. The database schema and sources approach would work on the data side some additional work would be needed to implement multiple blogs from one web site.

Raminloo wrote Aug 1, 2007 at 9:08 PM

My vote is Yes...

madskristensen wrote Sep 4, 2007 at 11:11 PM

You're sick! Sick I tell ya. Siiiiiiiiiick... :)

Jericho wrote Sep 10, 2007 at 5:12 PM

I prefer to have only one blog with the option of allowing multiple people to contribute. If this feature is ever implemented, please make sure that it's configurable so that people like me who prefer the current "one-blog-with-multiple-authors" behavior can choose it.

vishalsharma wrote Sep 14, 2007 at 9:55 PM

I voted for it Yes and ready to contribute to community for this.

Donot hesitate to ask.

Thanks & RegardsVishal Sharmavishal@fareportal.com,vishalsharma010@gmail.com

willsllc wrote Sep 27, 2007 at 8:19 PM

I vote no. BlogEngine.NET's best feature is the lack of this feature. If you want multiple blogs, get community server, and all the bloat that goes along with multiple blogs.

Mabyre wrote Oct 6, 2007 at 12:35 PM

I vote no. Is'nt it not so easy to make another virtual directory then copy-paste your actuel BlogEngine.NET then make the virtual directory pointed on this new blog. Then you will have two blogs. Do it again for tree blogs an so on.For those who use sql make an other instance of your data base then modify the string connexion.

juanje wrote Oct 30, 2007 at 11:54 AM

I vote no. Keep the project simple.

madskristensen wrote Nov 30, 2007 at 5:16 PM

I think I'll make some changes to the responsibilities of the provider model for the 1.3 release. The reason is to let the provider decide whether or not it allows multiple blogs. That way you can keep using the single blog if you want or switch the provider to a multiblog one.

suhua618 wrote Dec 11, 2007 at 8:09 AM

I voted for yes to this feature request. If you only use BlogEngine.NET for yourself or very small group people, current " one blog, multi author" schema is suitable. But I want to use one blog engine to support many user, each user has his own blog. Imaging you has 20 or 50 user want to build their own blog, under current model, you have to create 20 or 50 virtual directories , and 20 or 50 database for each user. That is unreanable and unbearable.

rwmnau wrote Dec 11, 2007 at 9:25 PM

I'm also working on implementing this myself, so I'm happy to contribute once I get it working properly. Essentially, I've just added a BlogID to each table, and then added a Blogs table that maps the ID to a name and virtual directory. I'll also have to sort out which items from the Settings table are per-blog, and which are site-wide. I'll be interested to see what approach the authors take if they implement this feature, though I hopefully I won't have to wait for them to get mine working...

digilocity wrote Dec 19, 2007 at 11:55 AM

I vote yes. I am, like many other potential BlogEngine adopters, responsible for implementing a blogging platform for my employer (a software company with about 30 potential bloggers). The thought of having to maintain 30 separate instances of BlogEngine is scary! Yes, I know I could use Community Server, but that's even more scary! I do understand the ethos of keeping BlogEngine simple, but the support of multiple blogs on a single server instance is fundamentally essential to a large portion of the "market".

andryuha wrote Dec 26, 2007 at 7:44 PM

Vote yes, a feature that's definitely needed

chunlizh wrote Dec 27, 2007 at 3:33 AM

I'm also working on implementing this myself

bbqchickenrobot wrote Jan 17, 2008 at 10:15 AM

I vote yes!! Love this idea!!

raffaele wrote Jan 25, 2008 at 9:16 AM

Anyone has implemented this features?! I search it...Please help me....
raffa83@libero.it

cheetahtech wrote Feb 12, 2008 at 3:16 PM

YES! Greatly Want this idea!

arielyang wrote Feb 19, 2008 at 5:12 AM

I vote no.

Please keep it simple, please.
If you want to use multiple blogs, other products such as subtext, dasBlog should be your choice.

moroandrea wrote Feb 26, 2008 at 3:05 PM

I definitely vote yes. I was using subtext and leaved it because after one year and half no updates has been released and the elasticity of the product is something messy.
I'm not so lazy, but a feature like this would certainly improve the total quality of the product.

And for what it may concern, just looking inside the code, it requires small changes (if you use an sql repository of course).

sukeshak wrote Feb 27, 2008 at 10:43 AM

I just noticed that it's being done by someone else already

http://www.codeplex.com/multiblogengine

moroandrea wrote Feb 27, 2008 at 2:01 PM

Wouldn't it better to have one single product enriched by all the feature user's requests?
Starting to have two branch of the same product soon or later could generate the same set of problems that text and subtext had. No one rearrange code and update it. Bugs aren't fixed, new feature aren't released.

IMHO it could be a great idea ask to share and integrate the code of the other user.

spyer wrote Feb 28, 2008 at 9:59 AM

I love Multiple blogs .

gormless wrote Feb 29, 2008 at 3:17 PM

I agree, I think that the other multiple blogengine.net branch should be merged back into this project.

jwendl wrote Mar 6, 2008 at 3:32 PM

My two cents is to make this functionality be a separate assembly. That way those of us who wish to "keep it simple" can keep the single BlogEngine assembly.

Those who want multi blog functionality can plop in the multi blog assembly to their ~/bin directory and it would override functionality of the classes that it would need to modify to allow for multi blogs.

BrianLakstins wrote Mar 10, 2008 at 3:45 AM

What about a minor start? How about moving the caching of the data down into the provider instead of caching most of the content in the business objects? That way, when you request a list of posts, the provider could give you a list of posts based on some kind of information that determines which site you are looking at (like the URL, or a session cookie).

rclarkson wrote Mar 11, 2008 at 3:05 AM

Here is an implementation that I came up with. I made it as simple as possbile. You only have to download a fresh copy of BE.N and change the property of BlogEngine.Core.BlogSettings. StorageLocation. You have to see it at my website because it is to lengthy to do here. You can see it at [url:http://www.romanclarkson.us/post/2008/03/10/Multiple-blogs-on-the-BlogEngine-an-implementation.aspx]

BrianLakstins wrote Mar 11, 2008 at 6:35 PM

I created 3 sites for anyone to test based on Roman's changes.
http://be1.balcoding.com/
http://be2.balcoding.com/
http://be3.balcoding.com/

They all share the same Application Pool and directory structure. They each have their own IIS instance.

BrianLakstins wrote Mar 11, 2008 at 10:44 PM

I made some enhancements to Roman's code to fix some issues I was running into with testing. I sent details to Roman, but I made some new test sites too:

http://be4.balcoding.com/
http://be5.balcoding.com/
http://be6.balcoding.com/

All 3 sites use the same directory and same Application Pool. There are 3 different IIS instances.

rclarkson wrote Mar 12, 2008 at 4:23 AM

I just added a xmlmultiblogprovider to the source control. You can use it in number of ways.
  1. Switch the web.config blogprovider to xmlmultiblogprovider. Decide if you are going to use subdomains or virtual direcotories or both
  2. Subdomains: Set up the IIS with all the headers you want to use. Navigate to each of the urls. The provider determines that the subdomain has not been configured and sets up the new directory with all the files necessary run BE.N.
  3. Virtual Directory: Point each virtual directory to the same root BE.N directory. Same thing, the BE.N takes care of the virtual directory.
Give it a try.

BrianLakstins wrote Mar 12, 2008 at 2:05 PM

I downloaded the latest bits, and I'm giving it a try. I set it up with both virtual directories, and with separate domains. Each site is still it's own IIS instance.

These all use the same directory and only the data in App_Data ends up being separated.
http://be4.balcoding.com/
http://be5.balcoding.com/
http://be6.balcoding.com/

These all use another directory, but the initial configuration is exactly the same as the directory used for the other sites.
http://be7.balcoding.com/be7/
http://be7.balcoding.com/be8/
http://be7.balcoding.com/be9/

Please help test away if you can.

rclarkson wrote Mar 12, 2008 at 7:14 PM

I made changes at your site. I did not get any errors and they were different. Which change set are you using?

BizTron wrote Aug 12, 2008 at 5:57 AM

I'd like to see this implemented for multiple blogs since I already support and contribute to 9 different blogs, with at least 20-30 domains. This is already difficult to maintain, but I still prefer BlogEngine.NET to the alternatives. If I run separate instances of BlogEngine, each with its own SQL instances, my server runs low on resources pretty quickly.
If a SQL provider can support multiple blogs, and multiple domains and subdomains per blog, then this is what we should be working on. If the rest of the community, myself included, wants a light single blog instance at times, we should still have it, without any extra baggage.

dprasen wrote Aug 25, 2008 at 10:44 AM

Please let me know the options for multible blogs under one instance

BenAmada wrote Nov 21, 2008 at 12:02 AM

I'm definitely for this. One request I have if this feature is implemented ... for SQL storage, instead of having multiple sets of DB tables (one for each blog like people are doing now with the table prefix), it'd be a lot cleaner and more intuitive from a DB point of view if there is only 1 set of tables with an extra column in each table as part of a composite primary key -- "BlogID". The new BlogID column would uniquely identify which blog the row of data belongs to. All Select, Insert, Update and Delete queries would need to include the BlogID so only data for the current blog is affected.

dondraper wrote Nov 21, 2008 at 2:15 PM

I agree fully with BenAmada on the adding the single BlogID column key to the tables. Multi-column primary keys work very well in SQL Server and would easily separate out data to support an unlimited number of blogs.

jjme88 wrote Dec 1, 2008 at 10:25 AM

this feature would be really really good.. especially if each blog could have its own theme as well.

briancarter wrote Dec 8, 2008 at 12:06 PM

My thoughts: One code base to for multiple clients. I use BE.N for a few clients and to update - I follow the SOP as outlined in the discussion link:

http://www.codeplex.com/blogengine/Thread/View.aspx?ThreadId=41646

I need to keep my client data separated; in separate folders or tables (or even databases). BE.N has a great architecture; I use it for blogs, websites, and applications.

A related issue that will need to be looked at, is with hosting, for example on godaddy with multiple applications the URL rewritting for paths include main hosts folder structure.

Loren wrote Jan 7, 2009 at 4:53 AM

A relational BlogPost table is needed to relate posts to multiple blogs. The alternative of adding a BlogID to the tables will not allow posts to be shared with more than one blog. Using a BlogPost table eliminates the need to paste the shared post in each blog. BlogPost will allow posts to be related to blogs with a checkbox list rather than pasting links. Post.OriginBlogID and Post.PrimaryBlogID columns would also be useful.

Proffitt wrote Apr 3, 2009 at 11:39 PM

I've created an SQL Server blog provider that allows this functionality. The project is hosted on CodePlex (http://blogenginesqlserver.codeplex.com/) and freely available.

2xs wrote Sep 20, 2009 at 12:50 AM

I vote yes to this one. Great idea!

CSADNT wrote Nov 5, 2010 at 4:42 PM

One small question, does anybody has tryed using the multi-pages pages feature as a replacement for multi-blogs ?
CS

rmcbride wrote Apr 9, 2011 at 8:34 PM

Where are we with this? I have seen hints that it might be coming soon, but those hints have been rambling about for ages. This is would be a great addition to the BE.Net project.

BenAmada wrote Apr 11, 2011 at 10:55 AM

Multiple blogs in one instance will definitely be included in the next version of BE -- currently scheduled to be released in June 2011.