LAMP (software bundle)

LAMP is an acronym for the combined use of programs based on Linux to provide dynamic web pages. The individual letters of the acronym stand for the components used:

This combination program defined in terms of an aggregate software distribution infrastructure, developed in the framework of dynamic websites and applications and can be provided.

Although the programs were not originally designed to work together, the bundle was quickly successful, as it was readily available and inexpensive to purchase and is. Over time, a variety of community projects around LAMP has developed that create documentation and easy installation routines for LAMP systems.

The name was coined by Heise LAMP -author Michael Kunze, who pointed out in an article in the c't 1998 that the LAMP software combination proprietary software solutions against is equally powerful.


The original LAMP stack consists of the four components of Linux ( operating system), Apache ( web server), MySQL ( database system) and PHP ( server-side script interpreter ). These components are reusable and can be used in different environments and composition.

Over time, new software has been written and also be made available under a free license, such as various web server. This software can replace the traditional components, but are then called by other names (see variants). Also, additional components are common, such as Squid, Snort, Nagios or create the RRDtool to statistics.

The only specialization is in the software units that connect the script interpreter with the web server on the one hand and with the database system on the other hand, here libapache2 -mod- php5 php5 -mysql and named after the package name in Ubuntu systems.

A request from the Web first to reach the network card. The operating system determines which program is provided for processing. This is done by the port number that is included explicitly or implicitly in the request. Linux forwards the request to the Apache server. The request includes an address that tells the web server can decide which file is to be retrieved from the file system. Is this an HTML file, so in most cases additional files belong to it, as images in JPEG format. Is the file in that a script is run, the Web server invokes the appropriate script interpreter, PHP here. The script can in principle be any instructions execute in the environment dynamically tailored websites but are often processed database content. To this end, the script calls on the database system.

Are procured the database content, formatted in the script and prepared, connected to the Web server with the other contents of the file system, so the result is returned to the operating system that delivers it via the network card.


The individual components of the LAMP- system may be replaced by similar components. Thus, the distribution build, for example, on other operating systems like Windows, Mac OS, Solaris, or other. The corresponding distributions are then called WAMP, MAMP or equivalent. If MySQL is replaced by PostgreSQL, called the bundle LAPP. Since the development of MariaDB is the "M" for this database system available. Often, the first letter is replaced with an "X" to make descriptions operating system independent.


Other software combinations

  • WISA (Windows, IIS, SQL Server, ASP.NET)
  • MEAN ( MongoDB, ExpressJS, AngularJS, NodeJS )
  • LYME (Linux, Yaws, Mnesia, Erlang )
  • BitNami
  • MoWeS