This is a new series I’m doing here that I hope to post every Friday – The Friday Roundup. The idea is to post a lecture/video/podcast [not always or necessarily "Islamic"] along with a Qur’an recitation. Nothing more, nothing less.
Here’s today’s installment of the Friday Rodeo.
Crisis – Mufti Menk
Surah Ikhlas in 10 different styles by Efasy
Recording of my khutbah from today.
Click play below to listen:
Full Guide to Killer WordPress Speed: Migrating from BlueHost to MediaTemple, W3 Total Cache, CloudFlare, and MaxCDN
This guide details my experience with outgrowing BlueHost’s shared hosting, migrating my site to MediaTemple, and optimizing it for super fast speed with W3 Total Cache, CloudFlare, and MaxCDN.
*Disclaimer: Some of the links in this post are affiliate links, meaning if you sign up for the service I will get a commission for them. There is no paid advertising in this post, it is my honest opinions and experience from serving as webmaster for multiple WordPress sites.
I’ve been on a BlueHost account for a few years now overseeing a few websites. The price was amazing and the support was great. However, as is the downfall of a shared hosting service, my sites were getting throttled. This basically means, they were taking forever to load no matter what I did to make them load faster. Thus began my quest of figuring out how to get my websites to load faster.
This is critical because if your content loads slow, people won’t wait for it. More importantly, Google actually factors in the load time of your site into its rankings.
You can check if you are getting throttled by logging into the CPanel, and selecting the CPU Throttling icon.
Here you will see a snapshot of the last 24 hours. Think of throttling in this manner: Once you type in the website address, sometimes it takes a few seconds before the actual content starts to load. This initial delay is due to throttling from the server.
In this post I’m going to assume you’ve completed the basic troubleshooting steps such as:
- Deactivate AND delete unused wordpress plugins. Get rid of absolutely everything you don’t need.
- Installed a cache plugin (W3 Total Cache is my recommendation).
- Delete post revisions [Info here] – If that’s too complicated for you, you can do it for free by hitting a “clear revisions” button for up to 5 sites at ManageWP.
- Optimize images by decompressing [WP Smush it plugin] or installing a plugin like Lazy Load to speed up load time.
Step 1: Test Your Website Load Times
Test your site load time and see what kind of scores you get. These tools will give you more detailed information as well about some things you can do to optimize them. I found that my scores went from about a 65 or 70 up to over 90 after implementing the steps below.
Follow the links below and input your site address to see its current performance grade.
Step 2: Upgrade Your Hosting
I knew I was getting more traffic than the shared hosting at BlueHost could handle, but it wasn’t enough to get a fancy server that cost over $50/month. After some research and reading through reviews I settled on the GridHosting service from MediaTemple for $20/month.
I’ve been on MediaTemple for a month and couldn’t be happier. Everything is quick, and the customer support at MediaTemple has been outstanding. I’ve probably logged 20 tickets with them all related to setup, site migration, site optimization, and everything else related to switching hosts and they’ve been knowledgeable, helpful, and courteous.
Gridhosting is a step up from shared hosting in that it scales better to traffic spikes on your website.
Step 3: Migrate Your Website to Your New Server
This is a big pain. MediaTemple will charge $150 per website to migrate from your old host to the new one. If you have the cash, I would say it’s definitely money well spent. Learning how to do it from scratch and making mistakes and so on for 6 websites probably took me in the neighborhood of 15-20 hours. If you have just one website, or potentially two and you’re not tech savvy, I would say it’s money well spent. But for 6 sites (i.e. $900), you can learn how to do it.
Hopefully I can save you some of the headache with the following tools. There’s basically 2 methods that I found worked well. The first method consists of:
- Set up the new domain in media temple.
- Do an export of the full database from phpMyAdmin (If you can’t find the database name, call BlueHost support to have them walk you through it. But basically, you need to read through the wp-config.php file for that DB install to get the DB name).
- Download the ‘wp-contents’ folder to your hard drive.
- Install wordpress in MediaTemple using the 1-click WordPress install.
- Import the PHP database.
- Upload the wp-contents folder.
This process is explained in more detail from a great write up over at SmashingMagazine.
*If you go with the Duplicator plugin, use this KB article for setting up the access to your database when doing the migration. If that doesn’t work connect using the ‘internal-db.s00000.gridserver.com’ (obviously replacing the 0′s with your db).
Also note that ManageWP offers a clone service as well with their paid accounts, but I could not get it to work properly, and the knowledge base for how to actually do a site transfer with their tool was not written clearly enough for me to follow.
Step 4: W3 Total Cache
Install the W3 Total Cache plugin.
Step 5: CloudFlare
Activate CloudFlare by following the directions to activate CloudFlare from within Media Temple.
Step 6: Activate MaxCDN
Sign up for MaxCDN – a Content Delivery Network.
This costs $39.95 for a year for one site, and $12/year for each additional site [MaxCDN refers to sites as Pull Zones].
Step 7: Get the MaxCDN Domain Name
MaxCDN will give you a temporary URL like yourdomain.netdna-cdn.com or something similar. You can check this from the Pull Zones configuration. Set up a custom domain like cdn.yourdomain.com.
This will make it cleaner when people visit your site and it’s loading elements instead of displaying the longer URL.
Step 8: Configure W3 Total Cache (This is where the magic happens)
First add CloudFlare to W3TC. This is fairly straightforward as the W3TC plugin already has built in support for CloudFlare. Just make sure you’re logged into CloudFlare so it can link your accounts.
Then add MaxCDN to W3TC. Follow this tutorial exactly in order to set it up correctly.
Step 9: WAIT 48 HOURS, and Then Test Your Site Speed Again
It takes a while for all these changes to settle in. So sit back, let it marinate, then test your speed and check your improvements.
Players work all year to get to that moment. It starts in training camp. Getting your conditioning down. Shooting thousands upon thousands of jumpers, making it muscle memory. Pushing til you hit your max, and then pushing some more. 82 game season is a grind. Playoffs are a grind. All the way through, you never stop working, never stop practicing. It leads to moments like this, where you’re in a broken play, you’re back pedaling, you can’t even check to see where your feet are, but all those hours of practice and work pay off into a moment like this
A single opportunity. A single shot. It can swing your entire fate. It only takes one play here or there to make the difference between winning it all, or falling mere seconds short.
Ramadan gives us an opportunity to do work. It’s an opportunity to learn to grind it out. To get focused. We get a lot of obstacles all year, but we have to be dedicated to the ultimate goal, and doing everything we can. The only regret a player will ever have is when they don’t leave it all out on the floor. When they don’t give it all they’ve got. How many of us give it our all?
It’s about getting up and focusing on every single prayer. It’s about keeping up with your daily dose of tafseer even when you’re too tired. It’s about sleeping 2 hours, and still staying up after fajr to make sure you hit your required Qur’an reading every day. It’s about not wasting the 15 seconds walking from parking lot to the door and making dua so you don’t waste that time. It’s about shaking off your grudges and shaking hands with the person you don’t talk to anymore. It’s about fasting all day, and then throwing a couple of extra bucks in the donation box instead of grabbing a snack to fill your craving on the way home.
It’s about seeing this month as an opportunity to serve. It’s about seeing every hardship you face as a gift from Allah (swt) reminding you to come closer to Him.
It’s doing all these things because we don’t know what our margin of error is. We don’t know if we can make it all the way to a Game 6 of the Finals, catch a ball back pedaling, and still have the wherewithal to stay in bounds and have enough practice under our belt to nail the shot. One half step off, and you’re out of bounds, and you lose the championship. You fall short of the whole goal. How confident are we that we’ve worked enough? That we’ve given it everything we have? That we can go to our grave saying we gave it all? That we seized every opportunity?
Dare I say, life is a game of inches? (warning, bad language)
Now, what are you gonna do?
Ramadan: Grind it out.