tracker issue : CF-3698424

select a category, or use search below
(searches all categories and all time range)
Title:

mod_jk in latest CF10 connector update no longer passes custom Apache environment variables

| View in Tracker

Status/Resolution/Reason: Closed/Won't Fix/ThirdParty

Reporter/Name(from Bugbase): Brian Ghidinelli / Brian Ghidinelli (Brian Ghidinelli)

Created: 01/23/2014

Components: Web Container (Tomcat)

Versions: 10.0

Failure Type: Data Loss

Found In Build/Fixed In Build: Final /

Priority/Frequency: Critical / All users will encounter

Locale/System: English / Linux RH Enterprise 6

Vote Count: 3

Problem Description:
In previous versions of the CF connector (before the ~November update), arbitrary environment variables set in httpd.conf were passed to CF for use in the CGI scope.  An example:

In httpd.conf:
SetEnv SERVER_ID web3 

In any CFM file:
<cfoutput>You're on server: #CGI.SERVER_ID#</cfoutput> 

We depend on this, and other, environment variables to run our site such that configuration is in the server and the codebase is uniform across multiple servers.

Actual Result:
The variable is now empty, such that CGI.server_id results in an empty string (as all undefined CGI variables do)

Something changed in the connector mod_jk that is no longer passing this in the latest build.

Expected Result:
It should print "web3".

Any Workarounds:
None.

----------------------------- Additional Watson Details -----------------------------

Watson Bug ID:	3698424

External Customer Info:
External Company:  
External Customer Name: brianatvfive
External Customer Email:  
External Test Config: My Hardware and Environment details:

RHEL, ColdFusion 10 (latest Jan update with November web server connector update), Apache 2.2.

Attachments:

Comments:

Subscribing since just filing the bug doesn't seem to send me updates?
Comment by External U.
13618 | January 23, 2014 04:15:10 PM GMT
While there's a workaround, I'd like to see this get fixed.
Vote by External U.
13623 | June 12, 2014 03:31:22 PM GMT
You can get around this by using the JkEnvVar directive, but ideally all custom environment variables are sent by default. For example: SetEnv SERVER_ID web3 JkEnvVar SERVER_ID This should allow you to call #cgi.SERVER_ID# to view the results. This took me a couple of hours to finally track down.
Comment by External U.
13619 | June 12, 2014 03:32:53 PM GMT
I concur with Dan G. Switzer. Unless there is a compelling reason to change this behavior, I would like to see it fixed as well.
Vote by External U.
13624 | January 29, 2015 11:28:10 AM GMT
Have you tried using RequestHeader? For example: RequestHeader set SERVER_ID web3 It may not show up in a cfdump but... <cfoutput>You're on server: #CGI.SERVER_ID#</cfoutput> ...should work.
Comment by External U.
13620 | January 30, 2015 07:10:49 AM GMT
Adobe, instead of just closing the ticket with a status of "NeverFix/ThirdParty" can you at least have the professional courtesy to explain the situation? Thanks. Also, how is it that a change in *your connector* caused a "third-party" issue to manifest itself?
Comment by External U.
13621 | January 09, 2016 04:25:10 AM GMT
This is a very aggravating bug to track down. Adobe could at least: 1. Document on their coldfusion reference site that not only can you not dump all the cgi variables sent by apache, many are inaccessible. 2. Document WHERE you modify the OOB mod_jk to pass the CGI variables the developers want.
Comment by Mark M.
13622 | March 15, 2018 07:54:08 AM GMT