In the ABAP Application Server, you have the option of working with virtual hosts. Each virtual host has a tree of ICF services. This allows you to use the URL to search for a service in a given service structure (with a virtual host as the root node).
An ABAP Application Server is running on the computer with the host name saphost and the IP address 126.96.36.199. The Internet Communication Manager (ICM) is configured so that ports 1080 and 8080 can receive HTTP requests (parameter icm/server_port_<xx>). The computer also responds to the alias myhost. Therefore, both saphost and myhost are mapped to the IP address 188.8.131.52.
You define whether there should be different virtual hosts using the profile parameter
is/HTTP/virt_host_<n> = <host1>:port1;<host2>:<port2>;...;
( <n> stands for numbers 0,1,...9). These parameters can be changed statically in the instance profile or dynamically in transaction RZ11. Transaction RZ11 also contains parameter documentation. Note that parameter
is/HTTP/virt_host_0 = *:*;
is set and cannot be changed. Therefore, if no other virtual host is found, the default host number 0 is used. The default host shows up in the HTTP service tree for transaction SICF as default_host. Initially, this is the only virtual server.
To avoid namespace conflicts, all other hosts provided by SAP begin with "SAP".
You can also specify a default service for a virtual host.
As with internal alias, select a target element from the HTTP service tree. If the URL then specifies the virtual host without any additional path information, the target service that is defined will be called.
To create a new virtual host, proceed as follows:
Call transaction RZ11 and set the parameter is/HTTP/virt_host_1 z. B. to the value myhost:*;.
Note that dynamic changes to the parameter are lost next time the system is restarted. If you want to set the parameter permanently, you have to set this in the profile file.
Call transaction SICF. Choose . Enter a name such as virt_host1 and create services or aliases to existing services under this virtual host (see Creating Services).
As a test, create a service under virt_host1 called virtping, which uses the same handler as the service bc/ping under default_host, that is, the HTTP request handler CL_HTTP_EXT_PING.
If a service is now called with the host name myhost and any port that is active in the ICM (1080 or 8080), the service tree under the virtual host virt_host1 will be used when searching for an appropriate URL path.
In this example, entering http://myhost:1080/virtping would therefore have the same effect as entering http://saphost:8080/bc/ping.
The prerequisites for this are shown in the graphic below: