Status/Resolution/Reason: Closed/Fixed/
Reporter/Name(from Bugbase): Nikolas Stephens / Nikolas Stephens (Nikolas Stephens)
Created: 12/11/2012
Components: Web Container (Tomcat)
Versions: 10.0
Failure Type: Non Functioning
Found In Build/Fixed In Build: Final / 283578
Priority/Frequency: Major / Some users will encounter
Locale/System: English / Win 2008 Server R2 64 bit
Vote Count: 14
Duplicate ID: CF-3435653
Problem Description:
CGI.server_port is not correct when using any type of port forwarding, such as in the case of an enterprise environment using SSL offloading. If specified in the URL, the CGI.server_port is correct. When forwarded by any other means, it is incorrectly reflected as port 80. In IIS, it is correctly reflected, but ColdFusion 10 incorrectly reports port "80" for any http request. This was working just fine in ColdFusion 6, 7, 8, and 9.
Adobe CF Customer Support has already verified this bug. Please get this fixed in the product ASAP!.
Steps to Reproduce:
STEP 1 - Install ColdFusion 10 on a clean installation of Microsoft Windows Server 2008 R2. Make sure to install the CF 10 mandatory update and the most recent CF update 5.
STEP 2 - Configure CF connector for IIS using default settings and procedures as outline by Adobe's installation guides.
STEP 3 - In IIS, configure the Default Web Site. Edit Bindings, and ensure that the only Binding is on the primary IP address of the server, and ONLY on port 81. There should be no bindings for port 80, and there should be NO other sites listed in the Internet Information Services (IIS) Manager
STEP 4 - In the webroot that Default Web Site points to, create a simple index.cfm file containt <cfdump var="#cgi#" abort />. Verify that you can access the site in your browser with the following URL: http://<insert IP address>:81/index.cfm
STEP 5 - Verify that you see a dump of the CGI scope, with server_port = 81
STEP 6 - Verify that you can NOT access the site with the following URL: http://<insert IP address>/index.cfm (note that the port has been removed)
STEP 7 - Download the NetworkActiv advanced port forwarding application from the following site: http://www.networkactiv.com/AUTAPF.html (download the version for Windows 2003, it works fine on 2008). This will simulate the port forwarding done by any load balancer or ssl-handler
STEP 8 - Run the downloaded NetworkActivAUTAPFv1.1u.exe file
STEP 9 - When prompted to install, choose No, which will run the program as a self-contained application
STEP 10 - In the NetworkActive AUTAPF window, click New to define a new port forwarding rule.
STEP 11 - Configure the Local Port = 80, and the Local interface IP address as the primary IP to which the Default Web Site in IIS is bound. Configure the Remote Port = 81, and the Remote host address again as the primary IP to which the Default Web Site in IIS is bound. OL binding port = 0, and Outbound-Local address should remain 0.0.0.0 for auto.
STEP 12 - Click OK to save the rule
STEP 13 - In the main window for NetworkActiv AUTAPF, highlight the newly created rule and click Enable. The rule may be Enabled by default already.
STEP 14 - Now, in your browser, attempt to access the local server on port 80 again using the following URL: http://<insert IP address>/index.cfm
STEP 15 - You should now see the dump of the CGI scope. Note that server_port reads "80", when in reality IIS is only listening on port 81. This SHOULD ready server_port 81.
Actual Result:
CGI.server_port = 80
Expected Result:
CGI.server_port = <the actual port the http traffic is being received on>
Any Workarounds:
In IIS 7.5, I am using URL Rewriter to overwrite CGI.server_port_secure = 1 if it detects traffic on CGI.server_port = 81, this is then causing Tomcat (CF10) to render cgi.server_port = 443 and CGI.https = ON, which is also incorrect (another bug?). Regardless, this overwriting of CGI.server_port_secure is at least a usable workaround until Adobe resolves this issue.
----------------------------- Additional Watson Details -----------------------------
Watson Bug ID: 3426811
Keywords:
FixTested
External Customer Info:
External Company:
External Customer Name: Nik S.
External Customer Email:
External Test Config: My Hardware and Environment details:
Windows Server 2008 R2
VMware host, 2cpu, 6GB RAM
IIS 7.5
ColdFusion 10, Update 5
Attachments:
Comments: