Being an entrepreneur and blogger, I’ve set up many websites and I’ve done it many different ways. I’ve often used all-in-one services such as Squarespace, but when it came time to set up a site for my latest business venture, I wanted to set it up the old-fashioned way.
Here’s what I learned along the way, and how you can do it for yourself:
What is the old-fashioned way anyway?
For those of you who are unfamiliar, the old-fashioned way of setting up a website is the process of purchasing a domain name and pointing it to a server which you’ve installed WordPress on. This isn’t the same as choosing a host with 1-click WordPress installations, but instead purchasing an empty server with full root control and installing everything yourself.
Why should you set up a website this way?
Good question. Setting up a website with an all-in-one service or a preconfigured server is definitely the easiest choice, but as I’m sure you already know, the easiest option isn’t always the best option.
Doing things the old-fashioned way will:
- Save you a significant amount of money (think more than half the cost of the easier solutions)
- Teach you new skills (which will help with managing your website without assistance)
- give you more control over your website
- And make it easier to scale up when the time comes.
As an added benefit, you’ll be able to utilize your server for more than just hosting one website. You could host multiple sites on the same server at no additional cost to you (besides of course the domain name).
So, with that in mind, here’s what I actually did:
Step 1: Buy a Domain Name and a Server
This is the easy part.
Head to the domain name registrar of your choice and purchase the domain you’d like. (I used Namecheap to purchase my domain name).
The next thing you’ll want to do is purchase a server. This is a little more difficult since there’s a lot to consider. I decided on ServerPronto’s Cloud VPS since it was one of the most affordable hosting options out there and gave me full control over the server.
I choose Ubuntu 14.04 as the OS as I’m already familiar with Ubuntu when it comes to servers, and it’s incredibly easy to install WordPress on and set up a website with.
Step 2: Change DNS Settings
Namecheap provides their own DNS so there was no need to set up a DNS on the server itself. This makes this step super simple.
All you need to do is create two A records with your server’s IP address as the value. Create one with the host as @ and another with the host as www. This will make it so that when you enter your domain name it will point to your server.
Give it some time for the change to have an effect (up to 30 minutes in most cases). Once the DNS updates, you should see an Apache 2 page when you type your domain name into a web browser.

Your website should display a page that looks like this.
Step 3: Accessing Your Server For the First Time
From this point on, you’ll be working on your server by SSHing into it. You’ll need a tool called PuTTY, and the root login info for your server.
Open PuTTY and connect to your server by entering it’s IP into the hostname field. This will pull up a terminal prompting you to log in, you’ll want to use your root login info to access the server.
Once this is done, you’re ready to proceed.
Step 4: Installing WordPress on an Ubuntu 14.04 Server
This part is the most difficult, and even then it’s incredibly simple, so simple, that once you’ve done it a few times you can have it done under 5 minutes! First, we’ll need to create a MySQL database for WordPress. Start by logging into MySQL
mysql -u root -p
If prompted, enter your root password (or if you set up MySQL yourself, enter the password you created during setup). Now that you’re in MySQL, enter the following:
CREATE DATABASE wordpress;
(You can WordPress to whatever you’d like the name to be, just remember it for later!)
CREATE USER wordpressuser@localhost IDENTIFIED BY wordpresspassword;
(For security reasons, you should change WordPress user and WordPress password to a different username and password)
GRANT ALL PRIVILEGES ON wordpress.* TO wordpressuser@localhost;
Now, refresh MySQL privileges and exit.
FLUSH PRIVILEGES;
EXIT;
Now that that’s done, we can install WordPress.
wget http://wordpress.org/latest.tar.gz
And decompress the package.
tar -xzvf latest.tar.gz
At this point, you’ll have the WordPress file installed and decompressed and it should be located at /var/www/HTML/WordPress
Now you need to configure WordPress. The easiest way is to do the following:
cp wordpress/wp-config-sample.php wordpress/wp-config.php
Now, you’ll need to edit wp-config.php, we’ll do this in nano. First change directories
cd /var/www/html/wordpress/
Then open the file with nano
nano wp-config.php
Now that you’re in the file, you’ll need to change the DB_NAME, DB_USER and DB_PASSWORD to the database name, user, and password you set up earlier. Here’s what you’re looking for:

We’re almost done now, but let’s set up permissions and ensure you’ll be able to use plugins and work with images first. Do the following:
apt-get update apt-get install php5-gd libssh2-php
This will enable you to work with images, plugins and more.
chown -R www-data.www-data /var/www/html/wordpress
chmod -R 755 /var/www/html/wordpress
These are for your permissions.
mkdir -p /var/www/html/wordpress/wp-content/uploads
chown -R :www-data /var/www/html/wordpress/wp-content/uploads
And this is setting up your uploads folder.
Now that all of your permissions are setup and WordPress is installed and configured, you’ll need to move WordPress from the WordPress directory to your web directory.
cp -r ~/wordpress/* /var/www/html
Now you should be able to enter your servers IP address (or the domain name if your DNS settings are already updated) and it will bring you to the web installation component of WordPress. If you see the WordPress installation page, congrats! You’ve just installed WordPress on your Ubuntu 14.04 server and are now ready to finalize your site and show it off to your friends and family.
If you’ve got any questions or are having difficulty setting up the site, let us know in the comments below and we’ll be more than happy to assist you!
Comments are closed.