Why I Migrated from http to https
This weekend, I tackled a project I’d been putting off for at least the last year. I migrated my (mostly) food blog from http to https. And it wasn’t that bad!
The reason I migrated my blog was because my Google traffic used to be my #1 source of traffic. Over the last couple years, it has plummeted. Drastically.
This year, my Google traffic is 50% down! Yikes. And from 2017 (to now – 2019), it’s down almost 80%. Whoa!
Google started marking non-https sites as “not secure” as of July 2018 and has been favoring https sites over http for a good bit now.
If my stats are any indication, I’m thinking these changes by Google have been impacting me big time.
So, it was time to buckle down and migrate my blog despite my fear of breaking it. Here’s how it went…
How I Migrated from http to https (Pretty Easily)
I have to give credit to my awesome hosting company, Kinsta, for making this process as smooth as it was for 3 reasons:
- The awesome Kinsta http to https Migration Guide: The guide was
- easy to follow
- even included things to do outside of hosting company responsibilities
- Great tools to help with http to https migration
- an SSL certificate is included with my hosting and the set-up install tool took only a couple minutes to run – I clicked a button (or two) and my https version of the site was ready (though there was more work to bring the rest of my site along – thus the rest of the guide)
- force HTTPS option is a click or so away
- find and replace tool updated 300k http references in only about 5-10 minutes nearly perfect (more on this below)
- Fantastic tech support by way of a real time chat message with team member Thoriq
- I’ve done enough tech projects on my blogs to know that they often go awry – sometimes you just have a question that halts your progress
- Kinsta offers real-time chat, so I opened a chat window before starting
- Thoriq was there every step of the way, answering every little question I had and checking the logs when the front end didn’t seem right (more on this below)
- He even sent screenshots with markup/arrows/etc. to show me how things were looking along the way.
Tips from My http to https Migration
Here are some tips and notes from my http to https migration that I thought may help you…
A Couple Things I Think That Helped Make This Smooth (Baseline)
- Premium hosting: I spending a lot for my Kinsta hosting, so I expect the quality of service to be higher, and it is! Glad to see my investment is helping, though I do hope all hosting companies make it as easy as possible for their customers. I may be taking this blog to https soon, so we’ll see how that goes with Siteground.
- Recently updated plugins/themes: I use Genesis because it’s one of the industry best. This means the themes/framework are generally more up-to-date. I’m also very selective of plugins I use and make sure they’re updated recently (preferably within the last couple months). It seems like some errors I’ve seen over the years are due to sloppy code/practices – so quality tools matter.
- Keeping changes within standards: One thing I’ve learned is that WordPress works smoothly when you don’t mess with the core code. So I never update core code or even theme/framework code. There are certain places to edit, and to be honest, I don’t edit much. This makes updates generally smoother.
The Migration Itself
These tips are related to the Kinsta Migration Guide and my experience:
- Step 1: Choosing an SSL Certificate
- This was easy because Kinsta includes an SSL Certificate with Let’s Encrypt.
- The guide mistakenly (currently) references a drop down option that references “Let’s Encrypt”, but I confirmed with Thoriq that the “Free SSL Certificate” option is the same (and after selecting, it does display “Let’s Encrypt”.
- After selecting the free SSL certificate option, it was run and installed in just a couple minutes – very fast!
- Step 2: Installing a Custom SSL Certificate
- Skipped this since the previous step took care of this.
- Step 3: Verify Your SSL Certificate
- Ran this test and got an A+, as expected.
- Step 4: Redirect HTTP to HTTPS
- Was super fast and simple – used Kinsta’s suggested Force https tool.
- One note: the tutorial suggested to select the second option for “requested domain”.
- But I checked with Thoriq, and he suggested I go with “primary domain” because it would also go ahead and redirect any www traffic (this is referred to www vs non-www traffic – if you don’t know about this, def give it a Google – it’s important).
- Step 5: Check For Too Many Redirects
- I actually just realized I didn’t do this during my migration.
- But, I ran it just now and it was fine – one redirect only in each section. Woop!
- Step 6: Update Hard-coded HTTP Links
- Here’s where things got a little shaky.
- I used Kinsta’s Search and Replace tool.
- I did a dry run and got an error message saying the tool had failed.
- Luckily, Thoriq was able to check my logs and see that it was actually a success and that 300k+ replacements were identified. Apparently another plugin was causing the error message mask.
- Thoriq said it should be okay to run, so figuring he was there in case something went wrong, I went for it.
- I couldn’t really tell when it was done running and thought I saw the screen refresh, so I asked Thoriq to check the logs. He reported back that it was still running.
- And then just a couple minutes later said it was a success!
- Step 7: Update Custom Scripts and External Libraries
- Luckily, I don’t use many custom scripts or external libraries – my plugins and themes do.
- Genesis gives you a box in the WordPress Admin area that allows you to insert code in the header and footer – a common way to include analytics code, etc.
- So the deal with this is (learned this from Thoriq) that if your site is https, ALL calls should also be https. This is why this step is important.
- So I checked my manually added code:
- The header box was good.
- Footer box: I copied the text here and saved it in a text file in case anything broke and I needed to revert back to what I knew was working.
- My Google Analytics code smartly didn’t reference http or https
- I got updated OptinMonster embed code and replaced this.
- I got updated StatCounter code and replaced this.
- The rest was good.
- I also went to View -> Developer -> View Source:
- did a CTRL+F to look for “http:” to see if there were references to non-https calls.
- There were 12 references, but they were all either:
- References (and not calls) – no need to fix.
- Links available only to a logged in user (like me) – no need to fix.
- I saved the changes and checked my site via an Incognito Google Chrome window to make sure my OptinMonster optin was still working. It was. And verified nothing seemed broken on my site, in general.
- Step 8: Migrate CDN From HTTP to HTTPS
- Skipped this since I’m not on a CDN currently.
- Wanted to get my site to https before getting a CDN set up.
- Step 9: Check Your Website For Mixed Content Warnings
- Since I’d been checking my site along the way and didn’t see any Mixed Content Warnings, this was good.
- This was actually one of the things I feared would break along the way and would be very difficult for me to fix. But it was basically a non-issue.
- Thoriq also checked and didn’t see any error messages.
- Remaining Steps + Miscellaneous
- The rest of the steps were pretty straightforward. And I was glad Kinsta included updates that weren’t even related to hosting/site updates.
- Google Search Console:
- I added a new property and submitted a new sitemap for the https version of my site.
- I also added a www and https version, but I’m not sure if this is needed or not. Still researching.
- Your profiles, etc. linking back to your site – updating your web site in each:
- Social Warfare:
- Updated my settings to recover any lost shares on http paths (especially since all previous pins would reference the http version of my site)
More to Read
Shout out to Thoriq for his friendly and prompt assistance with my migration! So glad to have such awesome partnership from Kinsta! Super fast support is definitely a great benefit of premium hosting. Thank you again, Thoriq! 🙂
Really hoping my Google traffic will start climbing back up. Cross your fingers for me because I’d really like to hit 25k sessions per month because it’s my next traffic goal, and it will qualify for me to sign up for an advertising network. Gotta pay those blog bills! 😉
Thank you so much for reading about my experience Migrating My Food Blog from http to https. Hope you found this helpful. If you did, please consider sharing it with a blog friend or two. Cheers!