Linux + Apache + MySQL + PHP

LAMP is an acronym that stands for The operating system on which the server runs. Linux provides the foundation for the LAMP stack

To install a LAMP (Linux, Apache, MySQL, PHP) server on a Linux system, follow these general steps. These instructions assume you're using a Debian-based distribution like Ubuntu:

Update Your Package Lists: Before installing any new packages, it's always a good idea to update your system's package lists to ensure you're getting the latest versions.

sudo apt update

Install Apache: Apache is the web server software that will serve your web pages.

sudo apt install apache2

Install MySQL (or MariaDB): MySQL is the database server. In recent versions of Ubuntu, MySQL has been replaced with MariaDB, a fork of MySQL. You can install either.

For MySQL:

sudo apt install mysql-server

For MariaDB:

sudo apt install mariadb-server

During the installation process, you'll be prompted to set a root password for the database. Make sure to choose a strong password.

Install PHP: PHP is the server-side scripting language that will process your dynamic content.

sudo apt install php libapache2-mod-php php-mysql

Configure Apache to Use PHP: Apache needs to be configured to recognize and process PHP files.

sudo nano /etc/apache2/mods-enabled/dir.conf

Then move index.php to the first position, so it looks like this:


DirectoryIndex index.php index.html index.cgi index.pl index.xhtml index.htm

Restart Apache: After making changes to Apache's configuration, it's necessary to restart the service for the changes to take effect.

sudo systemctl restart apache2

Test Your LAMP Stack: To check if everything is working correctly, create a PHP file in Apache's web root directory and access it through a web browser.

echo "<?php phpinfo(); ?>" | sudo tee /var/www/html/info.php

Then, navigate to http://your_server_ip/info.php in your web browser. You should see a page with PHP information.

That's it! You now have a LAMP server set up on your Linux machine. You can start building and hosting your websites or web applications.
 

 

Page Term Reference