Before understanding what exactly LAMP stack is, you will need to understand “what is a Software Stack”? It is a set of tools bundled together and includes everything needed to support an application.
LAMP is a popular web application stack. A web application stacks include an Operating system, Web server, Database and Programming language. A LAMP stack is suitable for building dynamic web sites and web applications. LAMP is an acronym of the names of its original four open-source components, 1) Linux Operating System, 2) Apache web server, 3) MySQL Database server and PHP programming language.
A brief explanation of each component is shown below:
1. Linux
It is an open-source operating system. It manages the interaction between your computer’s hardware and software.
For example, Ubuntu is an open-source and most popular Linux operating system used by many programmers.
Why Linux?
Now you might be wondering why use Linux? If you already have Windows, MacOS installed on your computer. You probably wondering why we need Linux? First of all, Linux is an open-source. It is free and customizable. Open-source means anyone can customize the Linux source-code and make it own operating system. These might be reasons why you want to or have to install Linux and deploy your project on it.
It is also reliable that means virus and malware do not affect Linux. You don’t need to download and install any drivers or software in Linux. You can install all those by running a simple command.
The most important reason why you should learn or use Linux is because of it is marketable. The only exception is Microsoft that means you can not install .Net in Linux.
2. Apache
The Apache web server is one of the most popular web server software around the globe. It is also open-source, customizable, reliable and secure. It can be highly customized to meet the needs of many different environments by using extensions and modules.
As you know Apache is the webserver. Now you are wondering what is a web server? Basically which the webserver does is it passes information across the web. It uses a set of rules and HTTP (Hypertext Transfer Protocol) protocol. It stores website information. When any user types the URL of your web server in web browser then it retrieves the website’s information and serves you the page.
So basically, a web server is the software that receives your request to access a web page, runs a few security checks and finally takes you to the web page. Some big companies use Apache including, LinkedIn, Facebook, HP, IBM, Salesforce, General Electric, Xerox and many more.
3. MySQL
MySQL is a relational database management system. It is a free, open-source, secure, customizable and uses a structured query language (SQL). In order to add, access, and process data stored in a computer database, you need a database management system such as MySQL Server.
MySQL allows you to implement a database with tables, columns and indexes. It also interprets an SQL query and combines information from various tables. It is capable of handling a large subset of the functionality of the most expensive and powerful database packages. It supports very large databases, up to 50 million rows or more in a table. It is an open-source that means you can modify the MySQL software to fit your own specific environments.
4. PHP
PHP is a free and open-source programming language. It is a server-side language that means the code is executed on the server, not on the user’s computer. It is a scripting language so you don’t need to compile it. It allows you to communicate with MySQL and used to write the application’s logic.