Creating a CMS Site with Shared Resources

So far we have focused on creating a new CMS site that has its own database. The site can be installed at the root of the Web site or as an off-root Web application. In this configuration, one IP address and one registered DNS name are required.

However, it is sometimes necessary to share the resources, especially in a development environment. For example, you may need to have several independent CMS sites sharing the same IIS site and the same database; or your environment may already have multiple IIS sites that you would like to become CMS sites that share the same database; or it may be required in the development environment that CMS sites share the IIS site, with each site having its own database. All these solutions are possible. We will now determine the setup steps for each of these configurations.

Multiple CMS Sites Sharing an IIS Site and a Database

You can have several CMS sites sharing the same database and the same IIS site. Each site is identified by an independent URL, http://<CMS site>. Each site has its own DNS name; the fact that they share a server infrastructure is transparent to the user. One IP address and several registered DNS names are required; all DNS names point to the same IP address mapped to the IIS site. All sites share the same CMS administrator and guest accounts; they also share the same administration tool and the user groups.

Assuming that the first CMS site is installed at the root of an IIS site and has already been configured using the steps we have discussed, to add a new CMS site, you need to do the following:

  • Using the IIS snap-in, add a host header <CMS site> to the existing IIS site, as shown in Figure 8-35. (Right-click the IIS site; select Properties; in the Web Site tab in the Web Site Identification section, click Advanced; in the Advanced Multiple Web Site Configuration dialog in the Multiple Identities table, select your IIS site; in the Advanced Web Site Identification dialog, type in the host header name, which is the site DNS name.)

    Figure 8-35. Adding HTTP host headers

    graphics/08fig35.jpg

  • Using the SCA, verify that Map Channel Names to Host Header Names is set to Yes.

  • Using the Site Manager, create a new top-level channel called <CMS Site> (Figure 8-36).

    Figure 8-36. Multiple top-level channels mapped to HTTP host headers

    graphics/08fig36.gif

  • Using Windows Explorer, create a separate subdirectory in the home directory of the IIS site that you will use to store the files for your new site. This step is optional; however, it is highly advisable because it will allow you to separate the site files and avoid confusion in the future.

In this scenario, none of the sites can use Secure Sockets Layer (SSL) because HTTP host headers that identify different sites are included in the encrypted client request, and therefore the mapping cannot take place.

NOTE: Refer to Chapter 18 for a full explanation of how this setup works.


Sometimes, a developer working on several CMS projects on one machine may want to move from one project to another without reconfiguring the environment. This is usually achieved by creating several CMS Web applications on one IIS site. Each Web application is installed in the virtual directory off the IIS site root; they all share the same database. Each CMS project is identified by a URL pointing to the separate CMS Web application, http://<IIS site>/<CMS application>. The CMS site name is the name of a Web application hosted by the IIS Web site; each site is a separate Web application.

In this scenario, one IP address and one DNS name for the IIS site are required. You don't have to enable host headers on the IIS site, and the host headers mapping is disabled in CMS.

Assuming that the first CMS Web application is installed off an IIS site root, to create a new CMS site in this way, perform the following tasks:

  • Create a directory on the hard disk that will be the home directory for a Web application that will contain your CMS site.

  • Configure the virtual directory on the IIS site to point to this physical directory. Make sure it is configured as a Web application.

  • Create the /CMS virtual directory under your Web application (i.e., /<CMS application>/CMS, which points to the physical directory <CMS installation drive>/Program Files/Microsoft Content Management Server/Server/IIS_CMS).

  • Check that the /webctrl_client virtual directory exists at the root of the IIS Web site; if it doesn't, create it and point it to <IIS installation drive>/Inetpub/wwwroot/webctrl_client.

Multiple CMS Sites Each Using an Independent Dedicated IIS site, Sharing a Database

You can have multiple CMS sites on the same machine that each use a dedicated IIS site while sharing the same database. Each CMS site is identified by an independent URL, http://<CMS site>. Each IIS site has its own DNS name; it may have its own IP address and port number, or they may be shared. If they are shared, then each site is identified by an HTTP host header. As before, the fact that the sites share a server infrastructure is transparent to the user. Because all sites share the database, the sites share the same CMS administrator and guest accounts; they also share the same administration tool and the user groups.

Assuming that the first CMS site is installed at the root of an IIS site and has already been created using the steps we have discussed, to add a new CMS site, you need to do the following:

  • Using Windows Explorer, create a physical directory that will be the home directory for the new site.

  • Using the IIS snap-in, create a new virtual IIS site; the home directory for this site should point to a physical directory you've created.

  • Using the SCA, configure the new IIS site as a CMS Web entry point. Verify that Map Channel Names to Host Header Names is set to Yes.

  • Using the IIS snap-in, add the /CMS and /webctrl_client virtual directories to your IIS site; they should point to the physical directories <CMS installation drive>/Program Files/Microsoft Content Management Server/Server/IIS_CMS and <IIS installation drive>/Inetpub/wwwroot/webctrl_client, respectively.

  • Using the Site Manager, create a new top-level channel called <CMS Site>.

Multiple CMS Sites Sharing an IIS Site, Each Using an Independent Dedicated Database

In a development environment, developers are often required to work on several independent CMS projects. Sometimes, they must have an independent dedicated database for each project. Usually, these requirements come from the organization's security policy.

You can have several independent CMS sites that share one IIS site, with each having its own database. Each site is identified by a URL pointing to the separate CMS Web application, http://<IIS site>/<CMS application>. The CMS site name is the name of a Web application hosted by the IIS Web site; each site is a separate Web application. CMS can only use one database at a time. Therefore, you will have to switch between the databases using the DCA.

One IP address and one DNS name for the IIS site are required. You don't need to enable HTTP host headers on the IIS site, and host headers mapping is disabled in CMS in this scenario.

To create a new CMS site in this way, perform the following tasks, using the detailed instructions provided at the beginning of the chapter:

  • Create a new database and assign permissions to the CMS system account.

  • Create the directory on the hard disk that will be the home directory for a Web application that will contain your CMS site. Configure the virtual directory on the IIS site to point to this physical directory. Make sure it is a Web application.

  • Run the DCA to configure the database as the CMS database and to assign an initial CMS administrator account.

  • Run the SCA to check that the IIS site is configured as a CMS Web entry point with read/write permissions, and to assign a CMS guest account.

  • Create the /CMS virtual directory under your Web application (i.e., /<CMS application>/CMS, which points to the physical directory <CMS installation drive>/Program Files/Microsoft Content Management Server/Server/IIS_CMS).

  • Check that the /webctrl_client virtual directory exists at the root of the IIS Web site; if it doesn't, create it and point it to <IIS installation drive>/Inetpub/wwwroot/webctrl_client.



Microsoft Content Management Server 2002. A Complete Guide
Microsoft Content Management Server 2002: A Complete Guide
ISBN: 0321194446
EAN: 2147483647
Year: 2003
Pages: 298

flylib.com © 2008-2017.
If you may any questions please contact us: flylib@qtcs.net