Get Virtualizor
How to install LAMP Stack on Ubuntu

Setting up a LAMP stack (Linux, Apache, MySQL, PHP) on Ubuntu is a foundational step for many web developers and system administrators. This powerful combination of open-source software allows you to host dynamic websites and applications. Follow this comprehensive guide to get your LAMP stack up and running on your Ubuntu system.

Step 1: Update Your Package Index

Before starting the installation process, it’s important to ensure your package index is up to date. Open your terminal and run the following command:

sudo apt update

Step 2: Install Apache

Apache is a widely used web server that will serve your web content. Install it using the following command:

sudo apt install apache2

To verify that Apache is installed and running, open your web browser and enter your server’s IP address. You should see the default Apache welcome page.

Step 3: Install MySQL

MySQL is a powerful database management system that will store and manage your data. Install MySQL with the following command:

sudo apt install mysql-server

After installation, run the security script to improve the security of your MySQL installation:

sudo mysql_secure_installation

Follow the prompts to set a root password and configure security settings.

Step 4: Install PHP

PHP is a server-side scripting language that will process your dynamic content. Install PHP along with some common modules using the following command:

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

To check if PHP is working correctly, create a test PHP file in the web root directory:

sudo nano /var/www/html/info.php

Add the following content to the file:

<?php
phpinfo();
?>

Save the file and exit the editor. Then, open your web browser and navigate to http://your_server_ip/info.php. You should see a page displaying PHP information.

Step 5: Adjust Apache Configuration

By default, Apache serves files ending in `.html` before `.php`. To prioritize PHP files, edit the `dir.conf` file:

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

Move `index.php` to the first position after the `DirectoryIndex` directive:

<IfModule mod_dir.c>
    DirectoryIndex index.php index.html index.cgi index.pl index.xhtml index.htm
</IfModule>

Save the file and exit the editor. Restart Apache to apply the changes:

sudo systemctl restart apache2

Step 6: Test Your LAMP Stack

To test if your LAMP stack is working correctly, create a PHP script that connects to the MySQL database. First, create a database and a user:

sudo mysql

Inside the MySQL shell, run the following commands:

CREATE DATABASE testdb;
CREATE USER 'testuser'@'localhost' IDENTIFIED BY 'password';
GRANT ALL PRIVILEGES ON testdb.* TO 'testuser'@'localhost';
FLUSH PRIVILEGES;
EXIT;

Next, create a PHP script to test the database connection:

sudo nano /var/www/html/testdb.php

Add the following content to the file:

<?php
$servername = "localhost";
$username = "testuser";
$password = "password";
$dbname = "testdb";

$conn = new mysqli($servername, $username, $password, $dbname);

if ($conn->connect_error) {
    die("Connection failed: " . $conn->connect_error);
}
echo "Connected successfully";
?>

Save the file and exit the editor. Then, open your web browser and navigate to `http://your_server_ip/testdb.php`. You should see a message saying "Connected successfully."

Conclusion

Congratulations! You have successfully installed the LAMP stack on your Ubuntu system. You now have a powerful setup ready to host your web applications. If you encounter any issues or have any questions, feel free to leave a comment or reach out to our support team

Happy coding!

Thank you for following this guide! If you found it helpful, share it with your network to help others get their LAMP stack up and running.

Warm regards,
Virtualizor Team

Code Copied
Newsletter Subscription
Subscribing you to the mailing list