Red X instead of image in distributed environment ColdFusion 8 or 9 and IIS : Coldfusion does not serve the Static content by default

ISSUE

Red X instead of image in distributed environment ColdFusion 8 or 9

i.e. when IIS and ColdFusion are on 2 separate physical servers and files [Static content or Dynamic content] does not reside on Web Server but resides on Application server i.e. server machine which has ColdFusion.

SOLUTION [One of the possible solutions]

Basically when it comes to Static content like images,
ColdFusion does not serve the Static content by default

It looks to IIS to serve static content [due to the mapping that are set while configuring the web connector only CFM, CFC, CFR, CFML i.e. ColdFusion specific content would be processed by ColdFusion]

So when you place a request for any content,

by default the request goes to IIS first it checks the extension of the file requested,

if the extension matches the ones which correspond to ColdFusion extensions,

The request is forwarded to ColdFusion to be processed.

 

If not it goes to IIS for processing.

 

Since in certain environments its not possible to keep the files in IIS webroot

And all files are required to be kept at the Application Server Tier/Level.

 

All we need to resolve this issue is to setup the application to use a context root.

So modify the

“Application.xml”

file under location “C:\JRun4\servers\<server instance>\cfusion-ear\META-INF”

 

<web>

<web-uri>cfusion-war</web-uri>

<context-root>/</context-root>

</web>

 

To use an appropriate Context root.

Say

<web>

<web-uri>cfusion-war</web-uri>

<context-root>/Aline</context-root>

</web>

This would force the Application to serve the static content from the Application Server end.

And the control would not go to IIS to serve the static content.

Comments are closed.