Adobe ColdFusion 8

Enabling application isolation

You can create separate server instances, each with its own ColdFusion applications; each application then has its own ColdFusion and J2EE server resources. In this configuration, you typically have a single external web server with multiple server instances on one computer, and separate virtual hosts (or sites) for each server instance.

Note: Although this section describes using ColdFusion, other J2EE application servers provide equivalent capabilities, and most of the concepts apply when deploying the ColdFusion J2EE configuration on those J2EE servers.

Running independent applications this way has several advantages, including the following:

  • Errors at the levels of the ColdFusion application or the JRun server do not affect any other ColdFusion applications.
  • You can support multihomed servers, where a single web server supports multiple IP addresses or domain names, such as www.mycompany.com and services.anothercompany.com, each running from a separate web root. For more information, see Multihoming.
  • Individual applications can use different JVM configurations, or even different JVM implementations. This feature is particularly useful if one application requires a particularly large Java heap. To specify customized JVM options, start the JRun server instance from the command line using the -config option of the jrun command, which specifies a customized jvm.config file. This feature is explained in the "Starting and stopping JRun servers" section in Installing and Using ColdFusion.

Note: Installing and Using ColdFusion describes creating multiple server instances on a single computer. To create multiple server instances on separate computers, each computer requires a separate license of ColdFusion Enterprise Edition.

To achieve complete application isolation, you use web-server-specific functionality to create a separate website for each application. Web servers have different terminology for this concept. For example, in IIS, you define separate websites (available in Windows server editions only) and in Apache, you create multiple virtual hosts.

These instructions apply when running ColdFusion in the multiserver configuration. The principles apply when running ColdFusion on other J2EE application servers. However, not all J2EE application servers integrate with external web servers. For more information, see Multihoming.

These instructions assume that you deploy each application at a named context root, which enables users to access CFM pages by specifying http://hostname/context-root/pagename.cfm. If other web applications are running in the server instance, each web application must use a different context root.

For example, with a context root of cf, users access CFM pages by specifying http://hostname/cf/pagename.cfm. For more information on using a context root, see Installing and Using ColdFusion.

Note: Although cf is the context root, it does not relate to your web application directory structure.

Use multiple server instances for application isolation

  1. Create a separate server instance by using the instructions in Defining additional server instances. If you are using the built-in web server, proceed to step 6 in this procedure.
  2. Using your web-server-specific method, create a virtual website (or separate website) for the application.

    This is different for each web server; for more information, see Multihoming, or consult your web server documentation.

  3. Test each virtual website to ensure that HTML pages are served correctly.
  4. Store your application's ColdFusion files in the ColdFusion web application root (recommended for application portability) or the web root of the virtual website.
  5. Follow the instructions for your web server to configure the connection between your virtual website and the server instance. For more information, see Web server configuration for application isolation.
  6. Test your application.
  7. Repeat these steps for each server instance.