A Web Stack or Web application stack refers to a compilation of software that is together used to build websites or web applications.
To construct a stack basic requirements are :
- Operating System
- Webserver
- Database
- Script Interpreter
LAMP stack is a collection of Linux OS, Apache Server, MySQL Database, PHP. LAMP is basically a collection of software that you require to create a dynamic website and web applications. These tools are capable enough that you don’t require any other tool for the purpose. The interesting thing about LAMP is that all the tools in it are free and open-source.
- Linux: An open-source operating system that manages system hardware and applications. It has been around since the 1990s. It runs most of the internet, stock exchanges, and the world’s top 500 supercomputers. It is one of the most secure and reliable OS available. Even Android is powered by Linux.
- Apache: A free, cross-platform, and open-source web HTTP server. Apache Web Server or simply Apache became the most popular web server after its development worldwide. Apache processes the user request and accordingly responds with suitable content. It uses protocols like HTTP or HTTPS which in fact are the most important protocols on the internet for communication between server and client. Hypertext Transfer Protocol is nothing but instructions used to define how the messages are formatted and transmitted across the web. While HTTP transfers data in plain text HTTPS transfers data with encryption which is more secure and recommended and this is why it is known as Hypertext transfer protocol secure. HTTP has a port 80 while HTTPS has a port 443.
- MySQL: MySQL is an SQL database based on the relational model. In a relational model, data is stored in tables in form of rows and columns. Ideal for both large or small-scale applications. It is developed and supported by Oracle. You can create, modify or maintain your data in databases with the query.
- PHP: A server-side scripting language that communicates with server and database and provides dynamic content per user request. PHP with MySQL has been a deadly combination and the most preferred one back then. PHP is used in backend web development but also with upgrades now you can create classes and objects in PHP. (OOP — Object-Oriented Programming).
Working of LAMP stack:
Browser requests for a particular web page or dynamic content from a web server(Apache) and web server pass the request to server-side technology used(Php). Which in turn if required communicates with the database(Mysql) and selects the particular user data and converts it into HTML which browsers can understand and the server passes the data back to the browser as a response. The Web Server runs on any Operating System(Linux).
Windows, Apache, MySQL, and PHP is commonly abbreviated as WAMP. Some people may confuse with LAMP but the only difference between the two is their operating systems. In the case of LAMP, L stands for Linux. Setting up a server included the installation of all the software listed in the abbreviation. Another version is MAMP, which is for Mac.
- Windows OS: Released by Microsoft on 10 November 1983 it is a GUI-based Operating System that helps clients communicate with hardware, other software programs, create, delete files and folders, store data and do much more!
- Apache: It is a web server used by 60% of server machines in the world. The Apache HTTP web server was developed by the Apache Software Foundation.
- MySQL: It is an SQL(Structured Query Language) based RDBMS(Relational Database Management System) developed by Oracle.
- PHP: It is a scripting language used at the server side to communicate with the server and the database and fetch data from the database to present to the user. Significant for dynamic websites
Working of WAMP stack:
Similar to LAMP stack the client machine request a website that is processed by the web server(Apache) and the server-side scripting language(php) is used for giving the website a dynamic feel. While the server runs on Windows OS.
MAMP Stack:
MAMP stack is a collection of MacOS, Apache Server, MySQL Database, PHP. Similar to WAMP and LAMP the notable difference is the Operating System Here we use MacOS. It can be easily installed on a Mac-based system. It provides all the equipment to run WordPress on the system
- MacOS: MacOS is a Graphical User Interface based Operating system developed by Apple and released in 1984 for Apple Computer’s Macintosh line of personal computers and workstations.
Working of MAMP stack:
Similar working like the stacks described above but MAMP stack uses MacOS as the operating system.
Difference between LAMP, WAMP, MAMP stack:
Basis | LAMP | WAMP | MAMP |
---|---|---|---|
Operating System | Linux OS | Windows OS | macOS |
Multiple Languages | Php, Python, or Perl | PHP | PHP |