There are already a lot of great guides for setting up LAMP on your computer. For those who don’t know, LAMP stands for Linux, Apache, MySQL, and PHP. One of the best I’ve seen was this one from Digital Ocean. Of course, in the last post I mentioned that I already installed Linux – Ubuntu 20.04 to be precise, so I didn’t need to go through that step and could go straight to installing Apache2. For me, the commands looked like this to install Apache2:
1 ifconfig 2 sudo apt install net-tools 3 ifconfig 4 sudo apt install -y apache2 apache2-utils 5 systemctl status apache2 6 sudo systemctl enable apache2 7 apache2 -v 8 sudo iptables -I INPUT -p tcp --dport 80 -j ACCEPT 9 sudo ufw allow http 10 sudo iptables -I INPUT -p tcp --dport 443 -j ACCEPT 11 sudo ufw allow https 12 sudo chown www-data:www-data /var/www/html/ -R 13 sudo apache2ctl -t 14 sudo nano /etc/apache2/conf-available/servername.conf 15 sudo apache2ctl -t 16 sudo a2enconf servername.conf 17 sudo systemctl reload apache2 18 sudo apache2ctl -t
In summary, these commands are to install apache2, start and enable the apache2 service, open up the firewall, and change ownership of the directory for the website. The key parts being to make sure your firewall rules allow for http and https traffic (80 and 443, respectively).
After getting apache2 installed, I needed MySQL, or in my case, mariadb. That went like this:
19 sudo apt install mariadb-server mariadb-client 20 systemctl status mariadb 21 sudo systemctl enable mariadb 22 sudo mysql_secure_installation 23 sudo mariadb -u root 24 mariadb --version
Again, the idea is to install it, enable it, and then set up your password.
Finally, I then installed PHP, like so:
25 sudo apt install php7.4 libapache2-mod-php7.4 php7.4-mysql php-common php7.4-cli php7.4-common php7.4-json php7.4-opcache php7.4-readline -y 26 sudo a2enmod php7.4 27 sudo systemctl restart apache2 28 php --version 29 sudo nano /var/www/html/info.php
Essentially, we just install PHP, enable it in apache2, and we are good to go!
Great! Now that my LAMP server is set up, I’m ready to install NextCloud!
Linux – keep it simple.