The Raspberry Pi is a wonderful little device. A powerful compact computer that is quiet and low power consumption makes it nice for many tasks. One such for me is a web server with PHP and MySQL. In this post that’s exactly what we are shooting for, a web server.
First let’s make sure we are up to date.
$ sudo apt-get update
Install Apache and PHP
$ sudo apt-get install apache2 php5 libapache2-mod-php5
Now lets install MySQL to complete the LAMP server.
sudo apt-get install mysql-server mysql-client php5-mysql
During the installation we will be prompted for the MySQL root password.
$ mysql -u root -p
and follow with the show databases; command.
Test Apache by opening a web browser and navigating to the Raspberry Pi’s address and you should receive the It Works! Page.
To check the PHP installation create a file called info.php in the /var/www directory with the contents.
sudo vi info.php
Paste the following code.
Open a browser and navigating to the Raspberry Pi’s address/info.php (ex: http://192.168.1.15/info.php) and you should receive an output like below.
Now we will need to set rights so the pi user can upload and change files so we need to grant rights to pi user change the ownership of /var/www or the user account you want to use. Or you can create a sub-directory under /var/www and grant access to other id’s.
$ sudo chown -R pi /var/www
If any other Apache or PHP configuration edits are needed the files are located at /etc/apache2/apache2.conf and /etc/php5/apache2/php.ini.
What easier way to administer a MySQL database than PHPMyAdmin.
$ sudo apt-get install phpmyadmin
First you will be prompted for the web server to use, select apache and slect OK.
Configure Apache to work with PhpMyAdmin
Next prompt will ask for configuration of dbconfig-common can be performed. Answer Yes.
Final prompts have to deal with it and password of the MySQL admin account to allow it to create dbconfig-common database and password to connect to MySQL with.
$ sudo nano /etc/apache2/apache2.conf
Navigate to the bottom of the file and add the following new line to the file:
Save the file and restart Apache2. To restart Apache, enter the following command:
$ sudo /etc/init.d/apache2 restart
Now we can install VSFTPD to allow for FTP uploading of code to the pi.
$ sudo apt-get install vsftpd
The configuration file for vsftp can be found /etc/vsftpd.conf to make changes as needed.
There you have it. I working Web Server running on the Raspberry Pi!