INFO 3601: Platform Technologies II

DigitalOcean Deployment & Apache Configuration

Detected Sub-Apps

Request an Account (Async)

After processing, your app will appear as https://<username>.trini.dev

Check Status

Objective: Deploy a secure multi-site Apache web server on DigitalOcean.

Step 1 — Create a Droplet (VM)

ssh-keygen -t ed25519 -C "yourname@uwi.edu"

Step 2 — Configure DNS

A trini.dev <your_ip>
A *.trini.dev <your_ip>

Step 3 — SSH into the VM

ssh -i ~/.ssh/id_ed25519 root@trini.dev

Step 4 — Install Apache

apt update && apt upgrade -y
apt install apache2 -y
ufw allow 'Apache Full'
systemctl enable apache2

Step 5 — Enable HTTPS

apt install certbot python3-certbot-apache -y
certbot certonly --manual --preferred-challenges=dns \
  -d "*.trini.dev" -d "trini.dev"

Step 6 — Configure Apache Virtual Hosts

<VirtualHost *:443>
  ServerName trini.dev
  ServerAlias *.trini.dev
  SSLEngine on
  SSLCertificateFile /etc/letsencrypt/live/trini.dev/fullchain.pem
  SSLCertificateKeyFile /etc/letsencrypt/live/trini.dev/privkey.pem
  UseCanonicalName Off
  VirtualDocumentRoot /var/www/html/%1
</VirtualHost>

Step 7 — Create Sub-Sites

mkdir -p /var/www/html/app1 /var/www/html/app2
echo "<h1>Welcome to App1</h1>" > /var/www/html/app1/index.html
?? Done! Your secure multi-site Apache server is ready.