Kentico 12 MVC Multisite instance

George Tselios asked on December 20, 2019 17:08

Dear Sirs,

Our team is about to start the development of our first multi Site Kentico 12 MVC project. Our project consists of 3 unique domains which share a great deal of Page Types. We need to clarify the following:

  1. Creating a new Kentico Site. When installing a new Kentico 12 MVC instance, the installer creates a default Site in Kentico. In order to create additional Sites, the process we followed is to use the Sites Application and select "New Site Wizard", then select "Use web template" and finally pick the "MVC Blank Site". After completing the wizard, the new Site becomes available in the System. First of all, is this process the correct one? Are there any other settings that need to be configured in order for the new Site to function properly?

  2. In the Pages application one may work with one Kentico Site at a time. So when more than one Site is installed, you have to use the selector on the top left of the page in order to designate the Site you need to edit. Since our Sites share a lot of Page Types:

    2.1. Is it possible to Copy & Paste pages between Sites? Assuming that the Page Type is available in both Sites.

    2.2. In the Pages Application, how do you setup content that needs to be shared between multiple Sites?

  3. Regarding web infrastructure, which one of the following is the correct approach:

    3.1. A Single IIS Web Site with three hostnames (bindings) pointing to the physical MVC application folder.

    3.2. Three distinct IIS Web Sites, each one having a unique hostname (binding), but all three point to the same physical MVC application folder.

Thanks in advance, George

Recent Answers


Brenden Kehren answered on December 20, 2019 20:11

You have a lot of questions here. Have you read the article Kentico put out regarding MVC and Multisite environments? I'd suggest starting there to see if it answers your questions.

1 votesVote for this answer Mark as a Correct answer

George Tselios answered on December 24, 2019 11:20

Dear Mr. Kehren,

First, thanks for the very informative article.

As long as our first question is concerned, we tested it and it worked. Also, for our second question, cross (Kentico) site copy & paste is supported.

Regarding our third question, we still don't have a definite answer, so let me elaborate more on our multi-site project.

As I mentioned, we need to develop three web sites in the same Kentico MVC instance. All three web sites share the same page types (except for a small number of pages e.g. the homepage page type) and only one of them has additional page types that uses exclusively. Taking into account the article's proposed application configurations, due to the large quantity of page type sharing, there is no need to have different physical (MVC) application folders (one for each web site), but a single physical (MVC) application folder for all three web sites will suffice.

Also note that in terms of (MVC) routing, we have developed a mechanism that automatically forwards each page request to a specific controller based on the page type's ClassName.

So, we may have a working instance either by using a single IIS Web Site with three bindings or by using three IIS Web Sites with a single binding. In both cases all IIS Web Sites point to the same MVC application folder.

Which configuration is best for our case?

Thanks in advance and Merry Christmas,

George

0 votesVote for this answer Mark as a Correct answer

Juraj Ondrus answered on December 27, 2019 11:27

  1. If you want to use single MVC app, then this approach is OK. Otherwise, you can add another MVC project to the system as described in the documentation, after step 9.
  2. I guess you got this working. But not sure why you need 3 sites if they will share the same content? If you do not need to hide some content from different editors, why not to use one content tree and separate the "sites" by the tree structure? So each "site" will have its own sub-tree?
  3. This is fully up to you and what is more convenient for you. At first, I would say that having three separate sites in the IIS would be better so each has separate application pool. But since you will use one MVC app, it makes almost no difference - if the MVC app goes down for some reason, all three sites might be down even if they use separate application pools in the IIS.
0 votesVote for this answer Mark as a Correct answer

Yowaraj Chhetri answered on March 17, 2020 05:11

Hi @George.

Can you share some more insights into how you achieved multi site tenancy in kentico 12 mvc.

Thanks

0 votesVote for this answer Mark as a Correct answer

   Please, sign in to be able to submit a new answer.