SafeKeep

HTTPS and SSL Setup Basics: Getting the Padlock Right

Posted Sep 21, 2026

Having an SSL certificate isn't the same as your whole site actually using it. To get the padlock right you need four things: a certificate installed (free and automatic on any decent host), every visitor redirected from HTTP to HTTPS, no "mixed content" — insecure resources loaded on a secure page — and your site's own configuration pointing at the HTTPS address. Miss any of them and browsers show a "not secure" warning even though a certificate exists. The good news is that on a modern host most of this is close to automatic.

Step 1: Install the certificate (usually already done)

On any reputable host, a free certificate from Let's Encrypt is installed and auto-renewed for you, often the moment your domain points at the server. Check your hosting control panel's SSL section to confirm a valid certificate is active for your domain and any subdomains. If it isn't, most panels have a one-click "issue Let's Encrypt certificate" button. You should not have to buy anything at this step — if a host is pushing a paid certificate for a normal site, that's a flag, as explained in free SSL explained.

Step 2: Force HTTPS with a redirect

A certificate does nothing for a visitor who arrives at the plain HTTP version of a page. You need a redirect that sends all HTTP traffic to HTTPS automatically, so nobody can load the insecure version. Many hosts have a "force HTTPS" toggle in the control panel; if not, it's a short rule in your site's configuration. On WordPress, setting both the site address and home URL to the https:// version, plus a simple redirect, handles it. After you enable it, visit your site at the http:// address and confirm it jumps to https:// — that round-trip test is the fastest way to know the redirect works.

Step 3: Fix mixed content

Mixed content is the most common reason a site with a valid certificate still shows "not secure." It happens when a secure (HTTPS) page loads a resource — an image, script, stylesheet or font — over insecure HTTP. Browsers flag the page because that one insecure resource can be tampered with in transit. The fix is to make every resource load over HTTPS: update hard-coded http:// links in your content and theme, and use protocol-relative or https:// URLs. Your browser's developer console lists exactly which resources are the problem, and on WordPress a database search-and-replace from http:// to https:// on your own domain usually clears the bulk of it in one pass.

Step 4: Update your site's own settings

Finally, make sure the site knows it lives at the HTTPS address. Update your CMS's configured site URL, update any hard-coded absolute links, and update analytics and search-console properties to the HTTPS version so your data stays intact. If you use a CDN or Cloudflare in front of the site, set its SSL mode to "Full" (ideally "Full (strict)") so the connection is encrypted all the way to your origin, not just to the edge — the weaker "Flexible" mode can leave the origin leg unencrypted and cause redirect loops. These settings are what make HTTPS consistent rather than partial.

Optional: HSTS for the extra mile

Once HTTPS is solid, you can add HTTP Strict Transport Security (HSTS), a response header that tells browsers to only ever connect to your site over HTTPS, closing a small window where a first visit could be downgraded. It's a genuine hardening step, but enable it only after you're confident everything works over HTTPS, because it's sticky — browsers remember it — and turning it back on and off is awkward. For most sites, getting steps one to four right is the important part; HSTS is a sensible finishing touch, not a starting point.

None of this requires a paid certificate or a security expert — it's configuration, and a good host makes most of it one-click. If you're choosing a host, free auto-renewing SSL and a simple "force HTTPS" option should be standard; every host in our most secure web hosting ranking includes them.

Common HTTPS mistakes to avoid

A few mistakes trip people up repeatedly. Using Cloudflare's 'Flexible' SSL mode when your host already has a certificate causes redirect loops and leaves part of the path unencrypted — use Full (strict) instead. Issuing a certificate for example.com but forgetting www or a subdomain produces name-mismatch warnings on those addresses. Hard-coded http:// links in a theme or in old content reintroduce mixed content after you think you're done. And forgetting to update your CDN, analytics and search-console properties to the https:// version quietly loses data or serves stale, insecure assets. Work through each one after switching, because 'the padlock shows on the homepage' doesn't mean every page and subdomain is clean.

Why getting HTTPS right matters beyond security

HTTPS isn't only about encryption anymore; it's about trust and visibility. Browsers label plain HTTP pages 'not secure', which visibly undermines confidence, especially on any page with a form. Search engines have treated HTTPS as a lightweight ranking signal for years, and some modern browser features and APIs simply won't run on an insecure origin. Practically, that means HTTPS should be in place before you launch, not bolted on later, and it should be complete — every page, every subdomain, every resource — rather than partial. The effort is small and mostly one-time on a good host, and the payoff is a site that looks trustworthy, ranks a touch better, and doesn't scare away the visitor who's about to type in their email.

One more setup detail closes the loop: pick a canonical version of your domain — with or without www — and redirect the other to it, so you're not maintaining two addresses and your certificate, internal links and analytics all agree. Whichever you choose, make sure the SSL certificate covers both forms so neither throws a warning. It's a small thing, but a mismatch here is a common cause of the 'secure on one URL, not secure on the other' confusion, and fixing it once keeps every visitor on a single, properly encrypted address.

HTTPS setup questions, answered

Why does my site say 'not secure' even though I have an SSL certificate?
Almost always because of mixed content or a missing redirect. If a secure page loads any resource — an image, script or font — over insecure HTTP, the browser flags the whole page. And if visitors can still reach the http:// version, they see the insecure site. Fix the insecure resource URLs and force an HTTP-to-HTTPS redirect, and the warning clears.
Do I need to redirect HTTP to HTTPS, or is the certificate enough?
You need the redirect. A certificate lets the secure version exist, but without a redirect visitors can still land on the unencrypted HTTP version, which offers no protection. A site-wide redirect from HTTP to HTTPS ensures everyone uses the secure version, and it's usually a one-click toggle in your hosting control panel or a short rule in your site configuration.
What Cloudflare SSL mode should I use?
Use 'Full' or, better, 'Full (strict)', which encrypts the connection from the browser to Cloudflare and from Cloudflare to your origin server. Avoid 'Flexible', which leaves the connection between Cloudflare and your server unencrypted and can cause redirect loops. Since your host already provides a free certificate on the origin, Full (strict) is both more secure and more reliable.

Ready to choose a host? See the most secure web hosting, ranked, or run the web hosting security checklist.