In a customer that already has several web applications and web pages being served, it is frequent to find a Microsoft Internet Security and Acceleration (ISA) Server as a firewall/gateway between the internet and internal servers. In this scenario, it is possible to use an ISA server as an intermediary between the users and the Agile Platform, but some requirements must be observed to make sure everything works as expected.
This tutorial works for both the Agile Platform for .NET and Java, either with accesses being made via HTTP or HTTPS. I begin with illustrating the basics, then I focus on 3 scenarios: HTTP --> HTTP, HTTPS --> HTTPS and HTTPS --> HTTP.
In the below examples, www.publicname.com will be the URL used by the end-users, and outsys.mydomain.org is the internal name of the OutSystems server.
In order to access the Agile Platform, you need to make sure that:
The last topic brings a discussion about namespaces. If you are to make an eSpace www.publicname.com/myApp available from outside, you need to make sure that no other thing named www.publicname.com/myApp exists, otherwise you will have conflicts and things will not work.
HTTP --> HTTP or HTTPS --> HTTPS
This is the simpler scenario. Make sure to configure as follows:
You may also want to configure the redirect rules in the Paths tab to make only certain paths available from the outside world. Make sure to configure redirection with equal External and Internal path, e.g.:
Always use equal external path and internal path (option same as published folder). If you had the scenario described in the basics (you have an eSpace UserApp that you wish to make available as myApp), you should create a virtual directory myApp pointing to the running folder of UserApp, and create the appropriate rules:
I will discuss HTTPS --> HTTP in a later post. For now, I just want to say that it is possible, but it will give you more problems and will be more error-prone than HTTP-->HTTP or HTTPS-->HTTPS. Also, since you can always get in SSL certificate for your OutSystems server for free - either with SelfSSL or from the organization Certification Authority, you should opt for this alternative when the traffic is to be via HTTPS.
Feel free to post your remarks and real life experiences with ISA Server and the OutSystems Platform, as they may be useful for other users and customers.