Form thanks / error messages - when DTS proxied with no Reverse Rewrite option configured

Here’s a good one:

We have followed instructions for setting up a proxy to our DTS server. Because we have a ten-site licence for CM1, we have set up a single proxy that will be used for all the sites.

Let’s call it cm1dts.otg.co

This URL has to be hard-coded into the DeliveryServers.xml file. All work fine. But…

Defining the thanks and error message page URLs in a form, it seems that the form-processor just hands back a redirect to those URLs. So, after a form is submitted we get the lovely result of a page not found on cm1dts.otg.co, rather than a redirect to the calling site.

I’ve also tried adding full URLs into the form meta-data with no joy.

Bug? Any thoughts?

Oliver,

Interesting; this is not the behavior I’m seeing on my testing instance. I’m hitting the same instance of my published site over two hostnames, and in both cases the Form widget is redirecting to a relative URL, preserving the original hostname. I’m running 3.1. There’s a chance this may have been modified in a recent version. Can you tell me what version of Percussion you’re running? Thanks!

Most recent version. It was working until recently I think. Happy to show you the offending page if that will help?

Sure, can you share a link? If you’d rather keep the location of one of your dev servers offline, I can also shoot you an email directly.

To loop in the rest of the Community, we were able to get to the bottom of this one. Our CMS hardwires in both the relative path to the form success / error page and the original domain that the form page is located on. This is to ensure that redirects from our DTS form processor to the success / error page resolve properly. However, it appears that the ARR extension used to proxy over to the DTS server from IIS by default reverses the rewrite host in the response headers, overriding the proper redirect host. These steps disable this behavior, allowing the redirect to return the site visitor to the proper domain:

  1. Open the “Application Request Routing Cache” menu in IIS Manager
  2. Select “Server Proxy Settings” under the Actions pane to the right
  3. Uncheck the “Reverse rewrite host in in response headers” option
  4. Save changes and restart your IIS site.