/usr/share/doc/libaws-doc/html/_sources/introduction.rst.txt is in libaws-doc 17.2.2017-2.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 | .. _Introduction:
************
Introduction
************
`AWS` stand for *Ada Web Server*. It is an Ada implementation of the
`HTTP/1.1` protocol as defined in the RFC-2616 from June 1999.
The goal is not to build a full Web server but more to make it possible
to use a Web browser (like Internet Explorer, or Netscape Navigator) to
control an Ada application. As we'll see later it is also possible to
have two Ada programs exchange informations via the `HTTP` protocol. This
is possible as `AWS` also implement the client side of the HTTP protocol.
Moreover with this library it is possible to have more than one server
in a single application. It is then possible to export different kind
of services by using different `HTTP` ports, or to have different ports
for different services priority. Client which must be served with a
very high priority can be assigned a specific port for example.
As designed, `AWS` big difference with a standard `CGI` server
is that there is only one executable. A `CGI` server has one
executable for each request or so, this becomes a pain to build and
to distribute when the project gets bigger. We will also see that it is
easier with `AWS` to deal with session data.
`AWS` support also `HTTPS` (secure `HTTP`) using
`SSL`. This is based on either `OpenSSL` or `GNUTLS` two Open Source SSL
implementations.
Major supported features are:
* HTTP implementation
* HTTPS (Secure HTTP) implementation based on SSLv3
* Template Web pages (separate the code and the design)
* Web Services - SOAP based
* WSDL support (generate stub/skeleton from WSDL documents)
* Basic and Digest authentication
* Transparent session handling (server side)
* HTTP state management (client side cookies)
* File upload
* Server push
* SMTP / POP (client API)
* LDAP (client API)
* Embedded resources (full self dependant Web server)
* Complete client API, including HTTPS
* Web server activity log
|