Inets is a container for Internet clients and servers. Currently, an HTTP server, a FTP client and an HTTP client has been incorporated into Inets. The HTTP server and client is HTTP 1.1 compliant as defined in RFC 2616.
The HTTP client is now documented http(3) and supported. It is loosely based on the earlier unsupported client developed by Johan Blom of Mobile Arts AB.
It is assumed that the reader is familiar with the Erlang programming language, concepts of OTP and has a basic understanding of the HTTP and FTP protocols.
Each client and server in inets is viewed as service. When starting the inets application the inets top supervisor will start a number of subsupervisors and worker processes for handling the different services provided. Some services require that there exist a configuration file, such as HTTP server(s), in order for the service(s) to be started. While the HTTP clients main process always will be started (it remains idle until some process issues a request) in this case the configuration is optional. Other services may not be configurable and have a more dynamic character, such as ftp clients, that will add worker processes to the supervision tree every time you do ftp:open/[1,2,3] an remove them every time you do ftp:close/1.
Services that needs configuring should be put into the inets applications configuration file on the form:
[{inets, [{services, ListofConfiguredServices}]}].
For details of exactly what to put in the list of configured services see the documentation for the services that needs configuring.