Lab 5.1: LAMP Stack in AWS - Part 1
Make a new VM:
Prepare LAMP:
Update system.
sudo yum update -y
Install the lamp-mariadb10.2-php7.2
and php7.2
Amazon Linux Extras repositories to get the latest versions of the LAMP MariaDB and PHP packages for Amazon Linux 2.
sudo amazon-linux-extras install -y lamp-mariadb10.2-php7.2 php7.2
Now install Apache web server and MariaDB.
sudo yum install -y httpd mariadb-server
Start and enable the Apache web server.
sudo systemctl start httpd
sudo systemctl enable httpd
Setup file permissions:
add ex2-user to apache group.
sudo usermod -a -G apache ec2-user
Now logout and login.
exit
Very membership in the apache group.
groups
# OUTPUT
ec2-user adm wheel apache systemd-journal
Change the group ownership of /var/www
and its contents to the apache
group.
sudo chown -R ec2-user:apache /var/www
To add group write permissions and to set the group ID on future subdirectories, change the directory permissions of /var/www
and its subdirectories.
sudo chmod 2775 /var/www && find /var/www -type d -exec sudo chmod 2775 {} \;
To add group write permissions, recursively change the file permissions of /var/www
and its subdirectories:
find /var/www -type f -exec sudo chmod 0664 {} \;
SUBMIT: Screenshot of Apache Test Page (showing address bar with your EC2 DNS name)
Test your LAMP server:
Create a PHP file in the Apache document root.
echo "<?php phpinfo(); ?>" > /var/www/html/phpinfo.php
SUBMIT: Screenshot of PHPInfo page (showing EC2 Public DNS name in Browser)
Delete the phpinfo.php
file. Although this can be useful information, it should not be broadcast to the internet for security reasons.
rm /var/www/html/phpinfo.php