From Matisse Enzer :
A computer, or a software package, that provides a specific kind of service to client software running on other computers.
The term can refer to a particular piece of software, such as a WWW server, or to the machine on which the software is running, e.g. “Our mail server is down today, that’s why e-mail isn’t getting out.”
A single server machine can (and often does) have several different server software packages running on it, thus providing many different servers to clients on the network. Sometimes server software is designed so that additional capabilities can be added to the main program by adding small programs known as servlets.