To use the Axon Ivy Engine in production, you must order a licence. Before Axon Ivy 8, you had to define the hostname, which then binds the licence to a host with this hostname. With Axon Ivy 8, we no longer require the hostname, but rather so-called Public URLs.
Why not more hostnames?
With container technology such as Docker 🐳 or Kubernetes, the hostname can easily be configured as you want it. This makes this check very easy to bypass.
What are public URLs?
Public URLs are the URLs through which the Axon Ivy Engine is available. Ultimately, the URL that the end user enters in the browser. These do not necessarily have to be public, i.e. available in a global DNS server.
How does a Public URL look like?
With Axon Ivy 8, in addition to the DNS name, host name or IP address, you also have to specify the port and the "context" path e.g.
Default values for port 80, 443, 8080, 8443 and default context paths "ivy" do not need to be defined.
Why so complicated?
Yes, very complicated 🧟. But we have adapted this for the new Leading Edge releases 9. Port and context path are no longer needed. We only check the DNS name / hostname / IP address.
This makes the Axon Ivy Engine available via all ports and all context paths and is no longer restricted to the default ports and context paths.
Thanks to @arus who has back-ported this change for Axon Ivy 8 LTS which will be available in 8.0.15!
Licence Problems since 8.0.12
You may have upgraded to 8.0.12 and now face licence issues 😬 when you use a reverse proxy in front of Axon Ivy Engine. This is because we fixed an issue
XIVY-4993 Propagate reverse proxy URI info to ivy engine which now forwards the requested url to the Axon Ivy Engine properly. You will need to order a new licence with the correct public urls.