| Linux | |
| History | |
| GNU Project • Linux kernel
(history • portability and supported architectures) • Naming controversy • Windows and
Linux • Adoption • Linus's Law •
|
|
| Distribution | |
| Linux distribution (list • comparison) • Linux package formats • LiveDistro (list • comparison) • Live USB • Mini Linux | |
| Applications | |
| LAMP • Desktop • Embedded • Gaming • Thin client | |
| Legal bodies | |
| Linux Foundation • Linux Users' Group
(LUG)
|
|
The acronym LAMP refers to a solution stack of software, usually free software / open-source software, used to run dynamic Web sites or servers. The original expansion is as follows:
- Linux, referring to the operating system;
- Apache, the Web server;
- MySQL, the database management system (or database server);
- PHP, 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. More recently, the P has come to refer frequently to Perl or Python as alternate programming languages. See Variants, below.
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). 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 increase the popularity of free software.[citation needed] O'Reilly and MySQL AB have made the term popular among English-speakers. Indeed, MySQL AB has since based some of its marketing efforts on the popularity of the LAMP stack.
Software
Linux
GNU/Linux (also known as just 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] It serves 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 ten million installations [2]
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."[3] 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
- See also: List of operating systems and Comparison of operating systems
- AMP, omitting the operating system
- AMPS, using SSL or Solaris
- BAMP, using BSD
- FAMP, using FreeBSD specifically
- MAMP, using Mac OS X
- NAMP, using NetBSD or Novell NetWare
- NAPP, using NetBSD and PostgreSQL
- PAMP, using PC-BSD
- PUMA, using Unix
- SAMP, using Solaris
- WAMP, using Microsoft Windows
Web server
- See also: Comparison of web servers
A non-free, 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.
- LAMP, for Linux, Apache, MySQL, and PHP
- WAMP, for Windows, Apache, MySQL, and PHP
- 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, SQL Server, and C#
- WISP, for Windows, IIS, SQL Server, and PHP
- WIPP, for Windows, IIS, PostgreSQL, and PHP (Common on Windows SBS systems [citation needed])
Databases
- See also: List of relational database management systems and Comparison of relational database management systems
- BAPP, using BSD and PostgreSQL
- FAPP, using FreeBSD and PostgreSQL (coined by Simon Walduck)
- FLPR, (FreeBSD,lighttpd,PostgreSQL,Ruby)
- 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
- See also: Comparison of programming languages
- 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
- FWAP, for Firebird, Windows, Apache, and PHP
- JOLT, for Java, Oracle, Linux, and Tomcat
- JSAS, for Joomla! Stand Alone Server
- LAMAR, for Linux, Apache, MySQL, AJAX, and Ruby on Rails
- LAMP, for "Linux, Apache, Most of our scripting languages start with 'P', and PostgreSQL" (used by Jeff Waugh)
- LAMPS, with the S for SSL or SugarCRM
- LAPDANCE, for "Linux, Apache, Python Distributed Architecture for Network Computing Environments", a FLOSS design for Distributed computing
- Grandma's LAMP is a particularly simple to use LAMP virtual machine
- MARS, for MySQL, Apache, Ruby, and Solaris [1]
- MSAS, for Mambo Stand Alone Server
- STOJ, for Solaris , Tomcat, Oracle and Java
- WAPP, for Windows, Apache, PostgreSQL, and PHP
- LAMPH, pronounciated in German, for a LAMP cluster running Heartbeat clustersoftware
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
- ^ Market Shares for Top Servers Across All Domains August 1995 - April 2007
- ^ Robin Schumacher & Arjen Lentz Dispelling the Myths.
- ^ Dale Dougherty (January 26, 2001). LAMP: The Open Source Web Platform.
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.
- LAMP Installation - How To Set Up A Ubuntu/Debian LAMP Server.
- WAMP Installation - Step-by-step guide on setting up WAMP
External links
This entry is from Wikipedia, the leading user-contributed encyclopedia. It may not have been reviewed by professional editors (see full disclaimer)





