Web Tutorials and Guides

DigitalOcean, the cloud-based virtual private server I use to host this blog, does a lot more than rent server machines to customers.

They have managed to put together a plethora of outstanding web tutorials and guides, explaining everything from the very basics to low-level topics.

This is a list of my favourite tutorials and guides from DigitalOcean, listed by topic, in no particular order.

Web Applications

  1. [Series] Building for Production: Web Applications
  2. 5 Common Server Setups for your Web Application
  3. 5 Ways to Improve your Production Web Application Server Setup
  4. An Introduction to HAProxy and Load Balancing Concepts


  1. Initial Server Setup with Ubuntu 14.04
  2. Additional Recommended Steps for New Ubuntu 14.04 Servers
  3. How to Add Swap on Ubuntu 14.04


  1. [Series] An Introduction to Managing DNS


  1. [Series] Introduction to Git: Installation, Usage, and Branches
  2. How to Use Git Hooks to Automate Development and Deployment Tasks
  3. How to Set Up a Private Git Serve on a VPS
  4. How to Set Up GitLab as your Very Own Private GitHub Clone
  5. Git is Simpler Than You Think
  6. Git Magic (Stanford)
  7. gittutorial man page
  8. Understanding Git Conceptually
  9. Git Basics
  10. Atlassian Git Tutorials
  11. git - The Simple Guide
  12. Git Immersion Lab


  1. 7 Security Measures to Protect your Servers
  2. An Introduction to Securing your Linux VPS
  3. How to Mitigate DDoS Attacks Against your Website with CloudFlare
  4. How to Set Up a Firewall with UFW on Ubuntu 14.04
  5. How to Set Up a Firewall Using IPTables on Ubuntu 14.04
  6. How to Install and Configure OSSEC Security Notifications on Ubuntu 14.04
  7. How to Protect your Linux Server Against the GHOST Vulnerability
  8. How to Protect your Linux Server Against the Shellshock Bash Vulnerability
  9. How to Protect your Linux Server Against the Heartbleed OpenSSL Vulnerability


  1. SSH Essentials: Working with SSH Servers, Clients, and Keys
  2. How to Set Up SSH Keys
  3. How to Use SSH Keys with DigitalOcean Droplets
  4. How to Configure SSH Key-Based Authentication on a Linux Server
  5. Understanding the SSH Encryption and Connection Process

LEMP (Linux, Nginx, MySQL, PHP) Stack

  1. [Series] Introduction to Nginx and LEMP on Ubuntu 14.04
  2. Understanding Nginx HTTP Proxying, Load Balancing, Buffering, and Caching
  3. Apache (LAMP) vs Nginx (LEMP): Practical Considerations

LAMP (Linux, Apache, MySQL, PHP) Stack

  1. How to Install a LAMP stack on Ubuntu 14.04


  1. How to Install Node.js on an Ubuntu 14.04 Server
  2. How to Set Up a Node.js Application for Production on Ubuntu 14.04


  1. A Basic MySQL Tutorial
  2. How to Create a New User and Grant Permissions in MySQL
  3. How to Import and Export Databases and Reset a Root Password in MySQL


  1. How to Create a Blog with Ghost and Nginx on Ubuntu 14.04
  2. Ghost Themes Overview
  3. How to Edit your Ghost Theme
  4. How to Switch Ghost Themes
  5. How to Change the Copyright Notice on Ghost Themes
  6. Add Code Highlighting to your Ghost Blog
  7. Ghost Built-In Helpers
  8. Submit Ghost Sitemap to Google