Hosting Your Website
Get A Domain
Google Domains - $12.00/yr (recommended)
GoDaddy - Prices vary
NameCheap - $8.88 .com $11.98 .net
Operating Systems
Most VPS's should offer a list of operating systems to use we recommend:
Ubuntu - one of the most popularly used Linux OS (recommended)
CentOS - A community build distro based on "RedHat" very stable
Debian - Great alternative for CentOS - both are similar, except that Debian uses “apt-get” and “.deb” while CentOS uses “yum” and “rpm”
Note: you more then likely will NOT have a visual interface for this and will need to use FileZilla (ftp client) & Putty (ssh client)
Get root
Make sure whatever you go with you have root access to the server this is needed to install the proper tools needed.
Create A dedicated hosting user
It is a good idea to make a user account dedicated for only the web hosting server to prevent any issues, the user must be able to use sudo/root
Install Apache
Locate server IP by running command: hostname -I | awk '{print $1}'
Installation
Open your ssh tool (putty) on your PC & login to your dedicated server account (Ex. IP: 10.0.0.1 | user: webserver | Password: W3B$3rv3r2020@ | Port: 22)
Make sure everything is up to date by typing sudo apt-get update or Sudo yum update
Install Apache by typing sudo apt-get install apache2
Verify Apache installation, open your browser and navigate to (Ex. http://10.0.0.1 , your server IP) if successful you should see the Apache 2 page
Configure Your Firewall
Start by viewing the available app profiles on UFW: sudo ufw show app list
You should see a list similar to this one:
Available applications:
Apache
Apache Full
Apache Secure
OpenSSH
Run this command to allow normal traffic on port 80: sudo ufw allow 'Apache' to check the status run sudo ufw status
Apache Commands
Stop Apache: sudo systemctl stop apache2.service
Start Apache: sudo systemctl start apache2.service
Restart Apache: sudo systemctl restart apache2.service
Reload Apache: sudo systemctl reload apache2.service