LAMP (software bundle): Difference between revisions
GNU/Linux is a synonym, not exact-o-nym for linux |
Requiem18th (talk | contribs) m Encyclopedias should be correct, not lazy. |
||
Line 1: | Line 1: | ||
The [[acronym]] '''LAMP''' (or '''L.A.M.P.''') refers to a |
The [[acronym]] '''LAMP''' (or '''L.A.M.P.''') refers to a [[solution stack]] of [[free software]] programs commonly used together to run dynamic [[Web site]]s or [[Server (computing)|server]]s: |
||
*[[Linux|'''L'''inux]], ( |
*[[Linux|'''L'''inux]], (referring to [[operating system|OS]] [[kernel]]); |
||
*[[Apache HTTP Server|'''A'''pache]], the [[Web server]]; |
*[[Apache HTTP Server|'''A'''pache]], the [[Web server]]; |
||
*[[MySQL|'''M'''ySQL]], the [[DBMS|database management system]] (or database server); |
*[[MySQL|'''M'''ySQL]], the [[DBMS|database management system]] (or database server); |
Revision as of 05:11, 6 February 2007
The acronym LAMP (or L.A.M.P.) refers to a solution stack of free software programs commonly used together to run dynamic Web sites or servers:
- Linux, (referring to OS kernel);
- Apache, the Web server;
- MySQL, the database management system (or database server);
- PHP (Sometimes Perl or Python), the programming language.
The combination of these technologies is used primarily to define a web server infrastructure, define a programming paradigm of developing software, and establish a software distribution package.
Though the originators of these open source programs did not design them all to work specifically with each other, the combination has become popular because of its low acquisition cost and because of the ubiquity of its components (which come bundled with most current Linux distributions particularly as deployed by ISPs). When used in combination they represent a solution stack of technologies that support application servers. Other such stacks include unified application development environments such as Apple Computer's WebObjects, Java/Java EE, Grails, and Microsoft's .NET architecture.
The scripting component of the LAMP stack has its origins in the CGI web interfaces that became popular in the early 1990s. This technology allows the user of a web browser to execute a program on the web server, and to thereby receive dynamic as well as static content. Programmers used scripting languages with these programs because of their ability to manipulate text streams easily and efficiently, even when they originate from disparate sources. For this reason system designers often referred to such scripting systems as glue languages.
Michael Kunze coined the acronym LAMP in an article for the German computing magazine c't in 1998 (12/98, page 230). The article aimed to show that a bundle of free software could provide a viable alternative to commercial packages. Knowing about the IT-world's love of acronyms, Kunze came up with LAMP as a marketing-like term to popularize the use of free software [citation needed]. O'Reilly and MySQL AB have popularized the term among English-speakers. Indeed, MySQL AB has since based some of its marketing efforts on the popularity of the LAMP stack.
Software
Linux
Linux (also known as GNU/Linux) is a Unix-like computer operating system.
Apache HTTP Server
Apache HTTP Server is a free software/open source web server, the most popular in use,[1] serving as the de facto reference platform against which other web servers are designed and judged.
MySQL
MySQL is a multithreaded, multi-user, SQL Database Management System (DBMS) with more than six million installations.[1]
PHP
PHP (PHP: Hypertext Preprocessor) is a reflective programming language originally designed for producing dynamic Web pages. PHP is used mainly in server-side application software, but can be used from a command line interface or in standalone graphical applications.
Variants
Sometimes Perl and Python are used in place of PHP and are often referred to as LAMP systems as well. One review of the platform goes so far as to say "Let the P stand for PHP, Perl, Python, and Ruby."[2] Some developers prefer to use the M to mean mod perl or mod python and the P to mean PostgreSQL in effect reversing the M and the P in functionality, which can cause some confusion.
Another variant designates the M to be Middleware (including Ruby, Perl,Python etc) and the P to be PostgreSQL. Although not generally accepted, this definition could be seen as a token of the continuing evolution in the free software community while redefining its objectives and boundaries.
Operating system
- AMP, omitting the operating system
- AMPS, using SSL or Solaris
- BAMP, using BSD
- FAMP, using FreeBSD specifically
- MAMP, using Macintosh [2]
- NAMP, using Novell NetWare
- PAMP, using PC-BSD
- PUMA, using Unix
- WAMP, using Microsoft Windows
- VAMP, using OpenVMS [3]
- XAMPP, using Microsoft Windows, Mac OS X, Linux [4] (PP = PHP and Perl)
Web server
A common alternative for Apache HTTP Server is Microsoft Internet Information Services or IIS. Because this can only be run on Microsoft software, a Microsoft Windows operating system must be used instead of Linux.
- FWIP, for Firebird, Windows, IIS, and PHP
- WIMP, for Windows, IIS, MySQL, and PHP
- WIMSA or WISA, for Windows, IIS, Microsoft SQL Server, and ASP
- WISC, for Windows, IIS, Microsoft SQL Server, and C#
- WISP, for Windows, IIS, Microsoft SQL Server, and PHP
Database
- BAPP, using BSD and PostgreSQL
- FLAP, using Firebird
- LAIP, using Informix
- LAPP, using PostgreSQL
- LAPS, using PostgreSQL servlets
- OPAL, using Oracle
- WASP, using Windows, Apache, SQL Server and PHP
Programming language
- LAMP, where the P is for Perl or Python
- MALT, using Apache Tapestry
- GLAM, using Groovy
- LAMJ, using JSP servlets
- LAMR, using Ruby
Other variations
- "A Brighter LAMP", with the last two letters meaning Middleware and PostgreSQL; this allows selection of languages that do not start with the letter P such as Tcl and Ruby
- AMPLE, with the E for Eclipse
- FAMP, for FreeBSD, Apache, MySQL and PHP
- FWAP, for Firebird, Windows, Apache, and PHP
- LAMPS, with the S for SSL or SugarCRM
- MARS, for MySQL, Apache, Ruby, and Solaris [5]
- STOJ, for Solaris, Tomcat, Oracle and Java
- JOLT, for Java, Oracle, Linux, and Tomcat
- WAPP, for Windows, Apache, PostgreSQL, and PHP
- LAMAR, for Linux, Apache, MySQL, AJAX, and Ruby on Rails
- JSAS, for Joomla! Stand Alone Server
- MSAS, for Mambo Stand Alone Server
Some employ the term LAMP generically to describe such alternative systems rather than make a new acronym, using it to denote the contrast between such systems and a unified web application development environment.
See also
- Comparison of WAMPs
- List of web application frameworks
- List of AMP Packages Combined installers for Apache, MySQL and PHP.
- WISA
References
- ^ http://news.netcraft.com/archives/web_server_survey.html
- ^ Dale Dougherty (January 26, 2001). "LAMP: The Open Source Web Platform".
{{cite web}}
: Unknown parameter|source=
ignored (help)
Further reading
- A Comparison of two major dynamic web platforms (LAMP vs. WISA) by Andrew Penry
- LAMP Installation - Helpful Guide on Setting up LAMP on Linux Servers.
- WAMP Instalation - Step-by-step guide on setting up WAMP