Monday, September 18, 2017

Kentico behind Reverse proxy

The website I am developing using Kentico EMS is running on a server behind a reverse proxy'ing firewall. This firewall takes care of the SSL communications (called SSL Offloading). This means that the proxy handles the SSL, and Kentico only sees HTTP requests.

Because requests in Kentico are always coming from the firewall and all request are always HTTP this causes several problems for Kentico:
  1. Functionalities like IP Banning and GeoLocation for our contacts are not working because Kentico only sees the proxy servers IP Address.
  2. Because Kentico only receives HTTP requests, all links created by Kentico will will be http links. This causes additional redirects when clients request images or files from Kentico (which will be redirected to https again). Also browsers may complain about 'mixed content'
  3. Because all requests in Kentico arrive non-SSL, setting the 'Requires SSL' option on a page to 'Yes' causes a redirect loop.