Lamp
Linux Apache MySQL PHP

What is Lamp?

LAMP is an open source Web development platform that uses Linux as the operating system, Apache as the Web server, MySQL as the relational database management system and PHP as the object-oriented scripting language. (Sometimes Perl or Python is used instead of PHP.)



lamplayers



Because the platform has four layers, LAMP is sometimes referred to as a LAMP stack. Stacks can be built on different operating systems. Developers that use these tools with a Windows operating system instead of Linux are said to be using WAMP; with a Macintosh system, MAMP; and with a Solaris system, SAMP.



Quick Start

  • You shall first download the Lamp software.
  • Now, in the dash board on the home page...

    dash

  • Open the terminal

    terminal

  • In the terminal type the command "sudo -s", to login as system administrator, the root user.

    rootlogin

  • In the terminal type the command "tar xvfz xampp-linux-1.7.4.tar.gz  -C  /opt"
    to extract the compressed Lamp software bundle.And the Lamp bundle gets intsalled.

    dash

  • Now, to check the successful installation of Lamp, start Lamp
    by typing the command "sudo opt/lampp/lampp start" in the terminal.

    startlamp

  • As you started the Lamp server, check if it started...
    Open a browser and type "localhost" in the address bar and it shall open the "LAMPP" home page indicating the start of Lampp web server.

    localhost

  • You can restart the Lampp server. Type the command "sudo opt/lampp/lampp restart" and hit enter...the server restarts

    restartlamp

  • And ... yea you are good to go. But did you notice, you might want to stop the Lampp Server?!
    You can do that too. Type the command "sudo opt/lampp/lampp stop"

    stoplamp




Installation Video




Back to top

More about Lamp

LAMP is an archetypal model of web service solution stacks, named as an acronym of the names of its original four open-source components: the Linux operating system, the Apache HTTP Server, the MySQL Relational Database Management System (RDBMS), and the PHP programming language.


lamparchi



The LAMP components are largely interchangeable and not limited to the original selection. As a solution stack, LAMP is suitable for building dynamic web sites and web applications.

Since its creation, the LAMP model has been adapted to other componentry, though typically consisting of free and open-source software.

  • Software Components

  • Linux

  • Linux is a Unix-like computer operating system assembled under the model of free and open source software development and distribution. Most Linux distributions, as collections of software based around the Linux kernel and often around a package management system, provide complete LAMP setups through their packages. According to W3Techs in October 2013, 58.5% of web server market share was shared between Debian and Ubuntu, while RHEL, Fedora and CentOS together shared 37.3%.

  • Apache

  • The role of LAMP's web server has been traditionally supplied by Apache, and has since included other web servers such as Nginx. The Apache HTTP Server has been the most popular web server on the public Internet. In June 2013, Netcraft estimated that Apache served 54.2% of all active websites and 53.3% of the top servers across all domains.In June 2014, Apache was estimated to serve 52.27% of all active websites, followed by nginx with 14.36%.

    Apache is developed and maintained by an open community of developers under the auspices of the Apache Software Foundation. Released under the Apache License, Apache is open-source software. A wide variety of features are supported, and many of them are implemented as compiled modules which extend the core functionality of Apache. These can range from server-side programming language support to authentication schemes.

  • MySQL and alternatives

  • MySQL's original role as the LAMP's relational database management system (RDBMS) has since been alternately provisioned by other RDBMSs such as MariaDB or PostgreSQL, or even NoSQL databases such as MongoDB.

    MySQL is a multithreaded, multi-user, SQL database management system (DBMS), acquired by Sun Microsystems in 2008, which was then acquired by Oracle Corporation in 2010.Since its early years, the MySQL team has made its source code available under the terms of the GNU General Public License, as well as under a variety of proprietary agreements.

    MariaDB is a community-developed fork of MySQL, led by its original developers. PostgreSQL is also an ACID-compliant relational database, unrelated to MySQL. MongoDB is a widely used open-source NoSQL database that eschews the traditional table-based relational database structure in favor of JSON-like documents with dynamic schemas (calling the format BSON), making the integration of data in certain types of applications easier and faster.

  • PHP and alternatives

  • PHP is a server-side scripting language designed for web development but also used as a general-purpose programming language. PHP's role as the LAMP's application programming language has also been performed by other languages such as Perl and Python. PHP code is interpreted by a web server via a PHP processor module, which generates the resulting web page. PHP commands can optionally be embedded directly into an HTML source document rather than calling an external file to process data. It has also evolved to include a command-line interface capability and can be used in standalone graphical applications.

    Perl is a family of high-level, general-purpose, interpreted, dynamic programming languages. The languages in this family include Perl 5 and Perl 6.They provide advanced text processing facilities without the arbitrary data-length limits of many contemporary Unix commandline tools,facilitating manipulation of text files. Perl 5 gained widespread popularity in the late 1990s as a CGI scripting language for the Web, in part due to its parsing abilities.

    Python is a widely used general-purpose high-level programming language.Python supports multiple programming paradigms, including object-oriented, imperative, functional and procedural paradigms. It features a dynamic type system, automatic memory management, a standard library, and strict use of whitespace.Like other dynamic languages, Python is often used as a scripting language, but is also used in a wide range of non-scripting contexts.



Back to top

Configuration

  • You will have to change the password for the phpMyAdmin for database security.

  • edit_privileges

    set_password

  • After setting the password for phpMyAdmin, you will have to change the password for the same in the configuration file also

  • config

  • And, set the Authentication Type to "cookies" which previously was "config"

    cookie

  • Now, the access to phpMyAdmin is limited to only authenticated users as it is password protected. User needs to login.

    phpmyadmin_login_screen


Back to top

Study Resources

References and Citations:

  • I thank "Apache Friends" and "Ubuntu Forums" and " Wiki's Lampp Archives from the bottom of my heart for all that I got to learn, understand and experience about this amazing software bundle "Lampp".
  • And that I could create a tutorial for introducing Lamp to the readers.


Back to top