FAQ Using IcsHosts
ICS 8.50 added multiple SSL host support to TSslWSocketServer and to TSslHttpServer and TSslHttpAppSrv, TIcsProxy and TIcsHttpProxy. Subsequent releases have added TIcsIpStrmLog and TSslFtpServer.
Previously, although the servers supported multiple IP addresses and ports, a lot of application code was needed to support multiple hosts, SSL certificates and separate directories for separate sites.
There is a new IcsHosts property which allows multiple hosts to be specified, each with one or two IP addresses and non-SSL and SSL port bindings, SSL certificates and private key, SSL context and security level, and other web server host related properties, requiring minimal extra application code for SSL support. Includes .well-known directory support.
IcsHosts allows ICS servers to automatically order, download and install SSL/TLS certificates from various suppliers, including free certificates from Let's Encrypt, and commercial certificates for DigiCert, Comodo, Thawte and GeoTrust from CertCentre AG.
The new Multi Web Server sample combines features of the existing web server samples adding multiple host support using the new IcsHosts collection, as a simple non-interactive servers supporting up to 100 different SSL hosts.
The TWSocketServer page has been updated with all the new properties available through IcsHosts, which also extend to other derived ICS servers TSslHttpServer and TSslHttpAppSrv, TIcsProxy and TIcsHttpProxy. There is a detailed IcsHosts page.