We are moving a ColdFusion site from CF8 to CF9.1 and have discovered that any CFForm that was uses Flash as it's format keeps giving us the "The form data has expired." error almost every time we visit the page containing the form. We have fiddled with the timeout settings and even tried to add the various "cfheader" workarounds that some people have mentioned when getting this error, but to no avail. To be clear this works perfectly on CF8 *and* it works on our CF 9.1 QA server, but for some reason fails on the Live Server. Supposedly the Live server completely matches the QA server, but the behavior is sure different in this instance.
What could be the issues? What Apache or CF settings might I look into? Could there be some weird permissions error on the generated swf form file or some other obscure reason? I am totally in the dark and can't figure out why ColdFusion keeps thinking the form data has expired.
Please, any ideas would be welcome.
Make sure the web server settings between the QA and the Production servers are also compatible.
I suspect your suspecion about permissions is the closest to the answer. But this is a little out of my depth of expertise.
Realize that ColdFusion default behavior is to NOT generate and actual swf FILE. Rather what it does is generate the swf content in memory and directly deliver it to the client. But if the web server is configured to look for an actual file system file you may have a clash going on
Thanks. The issue was that for some reason sticky sessions had not been enabled on the live server, but had been on all our other servers. Until now it had not affected anything else so we didn't notice, but it definitely caused the problem in this case.