Hosting Your Own WordPress Blog – Introduction & Overview

Introduction:

If you’re like me and want to set up your own WordPress blog, but don’t want to use any of the free or hosted options available, you’ve got a bit of work cut out for you. It’s not a difficult thing to do, but it takes some time. Because I don’t want you to have to learn on your own (and because I want to remind myself how to do this again later, with hopefully less headache), I’ll outline the steps involved, and hopefully help you get up and running.

If you’re asking why anybody would choose self-hosting over the ready-to-use free or hosted WordPress solutions, the answer is simple: flexibility. That is: the ability to have and control your own domain name, and monetize your blog however you wish.

Steps Overview:

Before jumping in headlong, you should have some idea of the basic steps required, and how each step ranks in level of difficulty. As you can see, there’s really not that much to it. But for the uninitiated (or the forgetful in my case), these steps might add up to a very long tedious day. I will outline each of these steps in detail later in the linked posts, but here’s an overview of each.

  1. (EASY) Buying a Domain Name
    • In this step, you’ll establish the name of your website, such as infinitedab.com, yourwebsite.com, etc. Here you will take ownership of a name by purchasing it from a domain name registrar (such as Google Domains). You will then continue paying for this name yearly.
  2. (HARD) Create a Cloud Server Using Amazon AWS
    • Instead of buying a physical server, we’re going to set one up in the “cloud”. You’ll have full control over this server, but won’t have to worry about physical hardware. In this step you’ll also determine who can connect to your server.
  3. (EASY) Create a Hosted Zone Using Amazon Route 53
    • In this step, you’ll connect your website name: infinitedab.com to the cloud server hosted by Amazon AWS. This establishes a link between your website name, and the “cloud” location (otherwise known as an ip address).
  4. (HARD) Install Apache and PHP on Your Cloud Server
    • In step 2, we technically created a cloud “compute” instance. In this step, we’ll turn that cloud computer into an actual server. This “server” will serve your website to your audience when they type in your website name.
  5. (EASY) Create MySQL Cloud Database Using Amazon RDS
    • WordPress requires a database to connect to, so in this step will create a cloud database. You could also set up a database on your cloud “computer”, but I wouldn’t recommend it.
  6. (EASY) Download and Install WordPress on Your Server
    • In this step, we set up WordPress on your new cloud server, run the initialization step, and rejoice at a job well done!

Prerequisites: Tools and Accounts You’ll Need:

No tutorial is complete without a list of tools and other prerequisites required to get the job done. Below is the complete list of what you’ll need:

  1. An active Google account (credit card connected). We will manage our domain name through Google Domains.
  2. An active Amazon AWS account (credit card connected). If you don’t have one already, create one now. It’ll take time for Amazon to green light your account, and I’m sure you don’t want to wait around. You can find Amazon AWS here.
  3. Free FileZilla FTP application. We’ll use this desktop application to copy files from our computer to our cloud server. You can download this application for Mac and PC here: Download FileZilla Client
  4. Free MySQL Workbench application (for sanity checks). We’ll use this desktop application to communicate to our database and confirm that it’s functional. This is a powerful tool, but we won’t do too much with it. Download MySQL Workbench
  5. Free WordPress software. This is the end goal: the lovely blog software that helps us share our creativity. You can download this software directly from WordPress.org: Get WordPress
  6. Free Terminal application (this comes pre-installed on a Mac. PC users will need to find an equivalent, such as the command line utility). We’ll use the Terminal application to communicate to our server and execute commands on the server’s “shell” (don’t worry, it’s all copy/paste).

Are you ready?

Let’s begin step 1: Buying a Domain Name

 


All Steps:

Introduction & Overview- Hosting Your Own WordPress Blog

  1. (EASY) Buying a Domain Name
  2. (HARD) Create a Cloud Server Using Amazon AWS
  3. (EASY) Create a Hosted Zone Using Amazon Route 53
  4. (HARD) Install Apache and PHP on Your Cloud Server
  5. (EASY) Create MySQL Cloud Database Using Amazon RDS
  6. (EASY) Download and Install WordPress on Your Server

 


Future posts:

In future posts, I’d like to cover additional topics, such as:

  • (EASY) Setting up Google AdSense on your WordPress blog (must install headers & footers plugin)
  • (HARD) Supporting SSL connections (https://)

 

Leave a Reply

Your email address will not be published. Required fields are marked *