Last week, we covered two tools to help you scan your website for malware. Another method to determine if your site has been hacked is to look at changes in your server files themselves. That, though, can be time consuming if you do it manually. If you use WordPress (the self-hosted variety), and you want to use an automated tool that detects changes to files, take File Monitor Plus for a spin.
Yesterday we compared Squarespace and WordPress, and I indicated that as slick as Squarespace was, 40Tech was going to remain on a self-hosted WordPress installation. Bloggers using a self-hosted instance of WordPress, though, need to make sure that their blogs are secure. That includes making sure that your blog isn’t already compromised. How do you do that? The easiest way to do that is to use external tools to scan your site. There are two that we use here at 40Tech, and recommend.
Earlier this month, we took a look at 4 ways to backup your WordPress blog. That post covered steps you could take to backup your site, including the use of WordPress plugins. We’re always on the lookout for better ways to get things done, and when it comes to backing up a WordPress blog, we’ve found a gem. Updraft is a dead simple plugin that will backup the contents of your site to the cloud (such as Amazon S3) or to an FTP server. You can even have the backup emailed to you.
What makes Updraft so awesome is how simple it is. When I set it up for 40Tech, it automatically set a backup directory on the server. I only had to set the backup interval (daily, weekly, monthly, or manual), and fill in my Amazon S3 account details. When I log into my S3 account, I can see the backup files sitting there.
You can set Updraft to email you when a backup is complete, and to delete the local backup on your server (prior to uploading the backup to the cloud, Updraft generates it in a folder on your server). You can also specify how many backups to keep. Perhaps the best part of Updraft is that your backup can be restored with the click of a button.
One word of warning: if you’re using Amazon S3, don’t use any non-alphanumeric characters in your bucket name. When I first set up Updraft, the backups were sitting on the server, and not being transferred into S3. I had been using a bucket that had an underscore in the name. When I changed that to a simple name, the backups started working as intended.
Updraft is pretty awesome. Have you found anything better?
If you run a website, content may be king, but speed is the cook that keeps the king fed. Recently, we talked about WhichLoadsFaster, a site that compares loading times of two or more websites. How do you improve your site’s chances of being the site that loads faster?One of the best tools for speeding up sites, and one that we use here at 40Tech, is W3 Total Cache, a caching plugin. W3 Total Cache not only speeds up your site, but it can also save you bandwidth.
First, though, let’s look at how WordPress works without a caching plugin. Normally, when someone visits your site, WordPress has to build everything on the page. It does that by processing code, making calls to your database, and outputting the final content that your visitors see in their browsers. Caching strips down this process. The general idea behind caching is that much of this process will (ideally) happen once – the first time someone visits the page. The page is saved at the time of that visit, and the prebuilt version of the page is then displayed to subsequent visitors, for a predetermined period of time.
W3 Total Cache is one of the more advanced caching plugins, so it can be daunting. There are several ways that it can cache your site (all of which we’re using here at 40Tech). The caching options are Page Cache, Minfy, Database Cache, Object Cache, and Browser Cache. You can also set up a CDN (Content Distribution Network).
Most of the settings don’t require any effort at all if you have a typical shared hosting solution. I went with the default settings for almost all of the settings, and they worked without any trouble. The two exceptions to this, and the two that are the most interesting from a geek perspective, are Minify, and the CDN options.
Using a CDN is a way to distribute some of your site images and other files on servers closer to your users. This not only speeds up your site, but also saves you bandwidth. 40Tech uses Amazon’s S3 and Cloudfront, which has a global network and is so cheap it is almost free. All that I had to do was input my Amazon S3 settings on the plugin’s CDN settings page, let the plugin walk me through getting the initial files uploaded, and I was good to go.
How I Set Up the Minify Features
W3 Total Cache’s Minify feature decreases the size and number of CSS and JS files by combining them into one file. You have to configure this, though, which might make your head explode at first glance.
If you take your time and do it in steps, though, it isn’t so hard. I did it by clicking on the Help Wizard button on the minify page, and just going through trial and error. I checked the box next to a few scripts at a time, testing out the site to make sure that I didn’t break anything. Fortunately, W3 Total Cache allows you to preview any changes before deploying them to the site (by clicking the “Preview” button near the top of the plugin settings page). So, if a minfied item messed up the site, I tried it in a different location, and ultimately removed it from the minified settings if it just wouldn’t work. It took time, and eventually I had identified each piece that could be minified. This might not be the ideal way to do it, but for a novice, it works. When you’re done, don’t forget to click the “Deploy” button to have the changes go live on your site.
Are you a site owner? What ways have you found to be speed up your site?
If you have a website or blog, you probably have the same worry that most blog owners share – what would happen if the unthinkable would happen, and all your data would be lost? Would that be the end of your blog? You can reduce the risk of disaster if you have a backup plan in place. Here are a few methods for backing up your site, along with a few pointers as well.
The first decision that you need to make involves figuring out exactly what you need to back up. Your backup typically should involve two types of data: your site files, and your site database.
When I back up 40Tech’s site files, using the methods discussed below, I don’t take any chances. I back up ALL site files. Some files on the server, such as cache files, probably aren’t needed, but I’d rather be safe than sorry.
Your database typically will be backed up into one file, so there’s not much to think about there. Again, I backup the entire database, and don’t omit any tables. The only complicating factor is if you’re using a plugin or an outside service that creates its own database. I don’t know of any WordPress examples, but in Drupal, the CiviCRM plugin requires its own database. If you’re using something similar, make sure that you back up that database as well.
Redundancy, Redundancy, Redundancy
We’ll cover a few different methods below, but don’t rely upon just one backup method. You don’t want to find yourself in the situation of needing your backup, and finding that your sole backup method wasn’t working as well as you thought. Always have more than one backup method.
As noted, you will want to use more than one backup method. Here are a few possible ways to backup your files and databases:
1. Pick a Host With a Reliable Backup Solution
Although you will want your own backup as well, many web hosts also have backup solutions of their own. 40Tech is hosted by Hawk Host, which uses a backup solution by R1Soft that allows me to browse a week’s worth of backups (1 for each day). I can browse my site’s directory structure from within the backup, and selectively restore files.
Hawk Host also backs up my database, although restoring that requires me to contact the support team. Hawk Host can restore any parts of my database, down to individual tables. Hawk Host has been a dream since I started using it as my primary host when 40Tech was born (after using a big name host for other sites for several years). If you sign up with Hawk Host using the above link, you’ll be supporting 40Tech via our affiliate link (which, as always, we only use for products that we use ourselves, and recommend).
Given how long it can take to restore a backup from your local drive, it can be comforting to know that your host is looking out for you.
2. Use a WordPress Plugin to Backup Your Database (and Maybe Your Files)
WordPress plugins make many actions easier, and backing up your database is no exception. I use the WordPress Database Backup plugin to have a backup of my database emailed to me every day. I have it sent to a Yahoo mail account, which has unlimited storage. I make sure to periodically visit that account to clean out older backups.
Another promising solution is the Automatic WordPress Backup plugin, which I recently stumbled upon and haven’t installed yet. AWB backs up everything – your entire site and your database – to the Amazon S3 servers, which provide cheap storage and bandwidth.
3. Backup Your Files With a Backup Program
You’ll also want to have a local backup of all of your site files. I use a program called SyncBack SE to perform nightly backups of 40Tech. SyncBack SE is a commercial program, but there is a free version that loses some features compared to the paid versions. SyncBack allows you to input the FTP settings for your site, and set a schedule for the backup. Every night at the same time, SyncBack starts up, logs in to 40Tech via FTP, and compares the files there with the files that I have hosted locally. Any new or changed files are then downloaded.
The safest way to perform a backup like this would be to rotate backups, so that you’re not always overwriting your files. For example, you could have a different backup for each day of the week, along with a different backup for each week, and each month.
If you want to get really technical, perform a Google search for backing up a site via rsync. Rsync is a file transfer/mirroring program that some website owners use to mirror their sites to another site, in the event of an outage. It also makes for a good backup solution, if you can figure it out.
4. Backup Your Site Manually
Almost all web hosts give you the ability to backup your site files and database manually. You should do this occasionally, so that you’re not at the mercy of the whims of an automated system. I typically perform such a backup whenever I’m making changes to 40Tech, such as when we debuted our new theme several months ago.
A manual backup could be as simple as copying all of your files to your local drive, by using an FTP program like Filezilla. If your host offers cPanel, you can also log in and get a compressed version of your site, in a single download.
With respect to your database, you can typically download that via cPanel as well. phpMyAdmin is another service that most hosts offer. With that, you can select all of the tables of your database, and export them into a zip file for download.
If you combine two or more of the above methods, so that you have more than one backup method for both your database and your site files, you should be in good shape in the event of any trouble. How do you backup your site?