Quick note about a problem with the cflayout tag – one of the Adobe’s attempts to play with the front-end. In my opinion – one of the places where ColdFusion no longer makes sense and should be replaced with a more robust alternative, like jQuery UI.

The problem: When using cflayout and cflayoutarea, if the content inside the cflayoutarea is dynamically redrawn, then the height of the layout area does not change. More details on the Adobe forum: https://forums.adobe.com/thread/565912

The drawback of this approach is that you need to hardcode the height of the layout area and accept the vertical scroll, but in some case this is exactly what you need.
The path to the solution was found on StackOverflow, as usual 🙂

Below is a simple ColdFusion application architecture using Apache as web server and Tomcat as JEE application server.

1. Request workflow

Apache: In the Apache configuration file we have a virtual host <VirtualHost host1:80> with DocumentRoot /var/www/theColdFusionApp
Apache receives the request – example: http://123.45.67.89:80.Hosts file: In /etc/hosts the host host1 is associated with the IP: 123.45.67.89 host1AJP module: If there is a non-CF request, Apache serves the request itself (ex. html, css, js, image). If there is a CFM request, the AJP module forwards it to Tomcat: ProxyPassMatch ^/(.*\.(cf[cm]|cfml))$ ajp://host1:8080/$1 (Apache config file)Tomcat has an AJP connector on that port: <Connector port="8080" protocol="AJP/1.3"/>
and an engine to process the requests:

Both entries above are in the Tomcat server.xml config file.Application folders: In /var/www/theColdFusionApp we have both the CF files (WEB-INF and CFIDE folders) and the actual application folders. More details below.

2. Folder structure and configuration files

To use HTTPS with the cfhttp tag, you might need to manually import the certificate for each web server into the keystore for the JRE that ColdFusion uses.
–Adobe

Here is how to do that:
1. Load the HTTPS url in your browser and export the certificate as a .cer file (see link above for more details)

2. Copy the .cer file on the CF server

3. Locate the path of ‘Java Home’ in CF Admin. It should be something like /usr/java/jre1.7.0_51, usually with a symlink to /usr/java/default.
The keystore location should be {Java Home}/lib/security/cacerts and it’s password protected.