In the next few blog posts I am going explain how to build a Self-Hosted WordPress site. Yes, that’s right. No debate over which Content Management Software (CMS) to use. It’s WordPress. Sorry if that offends you, but I have been doing web design far too long to be bothered with anything else. For 99% of users, WordPress is fine and dandy. For the purposes of these blog posts, I am going to skim over some of the really basic stuff (I might come back and add a bit of detail). I know that you can develop a site on your local PC or Mac, but the first time you get stuck, anybody who tries to help you will want to see what you have, and that means you need a web server. Unless you want to do a simple blog, forget the WordPress.com hosting packages, and become a self-hosted site.
That means you should get a domain. I use GoDaddy. I can see no reason why you shouldn’t do the same. Priced in US Dollars and no sales tax, they are usually cheap and effective. You need a web server. There are hundreds of cheap ‘WordPress Specialist’ web hosts. Forget them. Forget all the special ‘free’ hosting deals. The bottom line is, less than US$40 per month is cheap – if you pay annually you can often get a discount on this, sometimes as much as 25% off. I have been through all manner of web hosts and deals over the years, so you might be wise to avoid all that heartache. My preference is for what is called a cloud web server. But, beware, my experience over the last year makes me wary of Cloud Servers that use OnApp for management of the server; my sites used to ave this and it often crashed, leaving me offline for a day or more each time. On a budget look for OpenVZ and for performance at a price use KVM, here is a comparison.
With a Cloud Server, this means that your site does not reside on one machine, but shares its resources across a lot of physical machines. This is a much faster and more reliable solution. Different hosts may use a different name for this type of package, but this is what you need. Unless you have a big web site in mind, you will want to start with a Virtual Private Server (VPS) with a Unix operating System (such as Centos), Apache, MySQL and PHP. To make managing it easy, you will want WHM, cPanel and EasyApache installed. Most importantly, you will want a Managed Service. That means, when it goes wrong, you get help. If you can persuade the host to do it for you, installing nginx as a reverse proxy server for Apache will speed things up, but make things a bit more difficult to manage.
But we all like a deal, right? Over to search Web Hosting Talk’s Cloud Server Hosting Offers forum and click on ‘Search this Forum’ for the search term ‘hostmybytes ssd vps’. HostMyBytes are offering 33% off the lifetime payments, and if you use live chat on their site they will tell you that an annual payment instead of monthly saves 25% off that discounted price (thus a total of 50% off). So, be wise and forward-thinking and order a reasonable resource pool. So, looking at this week’s deal, we see the 6GB Managed SSD VPS Package Resource at $54.95 a month, less 50% is $27.50 a month on an annual payment contract. Let’s see what you get for this:
- Centos 6.x/Apache/MySQL or MariaDB/PHP
- OpenVZ Cloud Server
- 24×7 Managed Support (I can attest it is very good support)
- Optional nginx reverse proxy on each domain (this option is problematic as EasyApache only partly works with nginx installed, and you cannot have Apache 2.4 this. With EasyApache 4 around the corner, this may not be a good choice right now)
- Free migration from previous host (data, databases and all users, passwords and settings)
- 8GB RAM (standard 6GB + 2GB free upgrade)
- 120MB (formatted size) all SSD drive space
- (Genuine) unmetered bandwidth
- 2 x 4GHz CPU cores
- 1 dedicated IP address
- Own nameservers
- 100 GBPS DDoS Protection
- 1 Gbps uplink
- Server located in the OVH Beauharnois Data Center, outside Montreal, Canada.
That’s a really good deal for what you get. So far, my experience with HostMyBytes is that they offer really good support, even the live chat agents.
I shall now skip over getting the hosting deal and the server set up and ready. Let’s now assume you have all that done. Download and install WordPress from wordpress.org. Follow the 5 minute guide in the codex, or watch any number of excellent videos on You Tube. That was easy. If you want some data to play with, search the WordPress Codex for Sample data, download the file and install it. You may get some errors when installing, but ignore them.
With you logged in to the WordPress back end, your basic WordPress installation already has three plugins; Akismet, Hello Dolly and (if you imported the sample data file) WordPress Importer. All three can be deactivated for now, and then delete Hello Dolly – you don’t need it.
Go to Appearances … Themes, you will see 3 themes called 2013, 2014 and 2015. 2015 will be activated as the current theme. Delete the other two, by clicking on the thumbnail of each, which will bring the theme option up in full, and the delete link is at the bottom left. Why? Themes can be hacked, so if you are not using them, delete them. You can always re-install them later if you need to.
To save you a lot of time doing the research, I have a core set of plugins I find useful and install to every site I make. To save time, install the WP Install Profiles plugin. Go to Plugins … Add New and type the name into the search box and hit enter. From the search results, click install for the plugin and at the next window click the Activate Plugin link. Now go to Plugins … Bulk Install Profiles. This is the settings page for WP Install Profiles In the plugins list, paste the list of plugins (the list in the screenshot is different, so don’t worry, use the list as it now is below) and click download. Go back to the plugins page and you can see the new list of plugins installed. So much easier than doing them one by one. Or, if you want, you can install these one plugin at a time, but that will take ages.
nginx-helper (only add this one if you have nginx reverse proxy installed)
To complete the installation;
Step 1. Check the option box at the left side of the header of the table of all the plugins, so that they are ALL checked
Step 2. Uncheck the Aksimet plugin.
Step 3. Uncheck Global Hide Toolbar Bruteforce
Step 4. Choose Activate in the dropdown Bulk actions select box.
Step 5. Click the Apply button.
Step 6. Deactivate the Install profiles plugin.
The Post Types Order plugin will require you to go to its settings and simply save the default settings. Then open the General Settings => Permalinks page. I prefer the postname, without category, to be the URL, so you can see that I have added /%postname%/ in the custom field. Save these settings, and return to the Plugins page. There may be other error messages, but we will ignore these for now. In my next post, I will go through any changes that I would suggest you make to these plugins.
You are already on your way to build a self-hosted WordPress site.
Also in this series of posts:
Build a Self-Hosted WordPress Site – Part 2
Build a Self-Hosted WordPress Site – Part 3
Build a Self-Hosted WordPress Site – Part 4
WordPress SEO by YOAST for Beginners
Ultimatum Theme for your Self-Hosted WordPress Site
Ultimatum Theme for your Self-Hosted WordPress Site – Part 2
Ultimatum Theme for your Self-Hosted WordPress Site – Part 3
Ultimatum Theme for your Self-Hosted WordPress Site – Part 4
Ultimatum Theme for your Self-Hosted WordPress Site – Part 5 – Breadcrumbs
Ultimatum Theme for your Self-Hosted WordPress Site – Part 6 – Bootstrap Breadcrumbs
Uploading Images to Your Self-Hosted WordPress Site
Customizing Ultimatum Theme and WordPress
Fix for mysql_get_server_info() bug/error in Ultimatum 2.7.3
Ultimatum Special Offer! Save more than 55% off Pro Version