Solved! I had a conditional statement that would insert the following code into the <head> on one template: <base href="http://<cfoutput>#application.gDomainName#</cfoutput>"> Still doesn’t explain why it breaks.
Original problem: I have a bizarre situation and I am clueless on how to fix it. I have written an application that works fine on my development server. On the production server urls with cgi variables are behaving strangely. I have set up two ways to test the behavior. The first is in the application structure of application.cfm->index.cfm->included_file_with_href.cfm The href submits to itself like this: <a href="index.cfm?this=that&you=me&foo=bar">the link</a> I have include a <cfdump var="#url#"> as line 1 of the application.cfm. When the link is clicked the dump shows:
struct | |
amp;foo | bar |
amp;you | me |
this | that |
Now I created a test.cfm under the same directory structure so that it is influenced by the same application.cfm (remember, the one with the cfdump at line 1): application.cfm->test.cfm and it submits to test2.cfm and the dump comes out as expected:
struct | |
foo | bar |
you | me |
this | that |
So what would cause ampersands & to remain as & in one scenario but translate to & in another case on the same server? This makes no sense whatsoever!
The URL has to be getting screwed by either the web server or the ColdFusion MX7 server. Neither makes sense. Yes 7.0.2 hot fix 2 has been installed. IIS is current.
Other references: See also