Tutorial - Install Apache, PHP and MySQL on Raspberry Pi

In this tutorial I'll guide you through the steps to install a LAMP stack on your Raspberry Pi

Tutorial - Install Apache, PHP and MySQL on Raspberry Pi

The fundamental services required to turn your Raspberry Pi into a web server consist of Apache (the web server itself), PHP (scripting language) and MySQL (database server). When installed on a Linux based system, the collective term for these is LAMP.

There are other secondary services which aren't quite as important at this stage to provide FTP and outbound mail, but that'll be covered in a separate tutorial.

First things first, I'm assuming you've got Raspbian installed and followed my previous tutorial – Prepare your Raspberry Pi to become a web server.

Step 1 – Make sure you're up-to-date

Ensure you're running the latest system software. To check for updates and install them enter the following command:

sudo apt-get update

Step 2 – Change your hostname

Just to miminise the chances of any hickups we're going to change the hostname from the default ‘raspberrypi'. From the terminal, enter:

sudo nano /etc/hostname

Nano editor will launch. Replace ‘raspberrypi' with the domain from which your Raspberry Pi will run from. It's not essential to change the hostname, but it is something I have done.

Once you've changed the hostname press CTRL + X to exit nano, and save when prompted. Now restart your Raspberry Pi to take to the new hostname:

sudo reboot

Once restarted, find out the FQDN to ensure your RPi has the correct hostname. A FQDN is a Fully Qualified Domain Name. To do this enter the following command once your RPi has restarted and you've logged back in with SSH:

hostname --fqd

If the hostname you entered is returned, congratulations! Go stick the kettle on and have a brew before moving onto the next part.

Step 3 – Install Apache

Here's where the fun begins. We're going to start by installing Apache and some other packages. To do this its begin with entering:

sudo apt-get install apache2 apache2-doc apache2-utils

This shouldn't take long. Once we've done that we're going to install a few support packages including PHP. Once complete, enter the following command:

sudo apt-get install libapache2-mod-php5 php5 php-pear php5-xcache

This too shouldn't take too long. Follow up with installing the support package for database connectivity:

sudo apt-get install php5-mysql

Now we're going to install MySQL server. Do this by entering the following command:

sudo apt-get install mysql-server mysql-client

As part of the installation, you'll be asked to set a root password. Enter a password and then confirm it when prompted in the blue screen.

That's pretty much it! Reboot your device, you're ready to start hosting from your Raspberry Pi! In the next few tutorials, I'll guide you through installing PhpMyAdmin, FTP server and Postfix. Feel free to leave your comments below.