Web Development - Full Stack Guestbook App - Overview

In this project I decided to gain a better understanding of web server, app server and database server interactivity. So i created a simple guestbook app running on a local raspberry pi making use of both a database and app layer.

I started by setting up an apache server locally on a raspberry pi 4. With it I got familiar with the server by adjusting the files inside of its directory. (/var/www/)

In there I set up an app server using PHP and also an app server using flask to look at the difference in setup process between the two. In the process creating a framework for the guest app in PHP and a simple test program using flask.

PHP Guestbook App Repo Link: PHP Guestbook App

Flask Test App Repo Link: FLask Test App

With the app layer setup and offering a guestbook interface that collects a name and message followed by the entries collected so far as the main elements of the page. I went on to setup a database server using MariaDB, and configured it to collect and store the information gathered on the app layer in to a table all on the same raspberry pi.

I decided to tinker a step further, separating the app and web layer from the the database using a raspberry pi 5 for my database server and began building an understanding of what cloud computing offers. Ultimately ending the project after familiarising myself with the access and error logs for the web server. (/var/log/apach2), setting up info logs for the PHP server using phpinfo.php and logs for the database server using SET GLOBAL general_log = 'ON'.

This project gave a practical understanding of back-end engineering, server interactivity between a full-stack app as well as what cloud computing is offering to its users when separating a websites database from the machine running its web server and app server. It increases the overall security of the database which is critical to the privacy of any given organisation.