Fix today
Your login page is not secure
A page on your site asks for a password but loads over plain http, without the padlock. Anything typed there travels unencrypted and can be read along the way. Serve the page over https and send every http visit to the secure version.
Your login page is not secure. A page on yourbakery.com asks for a password without the padlock.
Ask your developer to serve the login page over https and redirect http to it.
What it means
Web pages load in one of two ways. With https:// the connection is encrypted and browsers show a padlock. With plain http:// everything is sent as readable text.
We loaded a page on your site over plain http and found a password box on it. So a visitor, a customer or you yourself could type a password into a page that sends it without any encryption.
It usually means one of three things: the site has no security certificate yet, it has one but still answers on http without redirecting, or an old login page was left behind on the insecure address.
Why it matters
A password sent over http can be read, or quietly changed, by anyone between the visitor and your server. That includes other people on the same coffee shop or hotel Wi-Fi.
Browsers warn about this directly. Chrome marks http pages as "Not secure", and Firefox shows a warning right under the password box. Many people will not type a password after seeing that, and they are right not to.
People reuse passwords, so one captured on your page may unlock their email or bank too. If it is an admin password, it unlocks your whole site.
How to check your own site
- Open your login page by typing the address with
http://in front, for examplehttp://yoursite.com/login. - Look at the address bar once it loads. If it still says
http://, or shows "Not secure", the problem is there. If it switches tohttps://with a padlock, the redirect is working for that page. - Repeat for every page with a password box: the admin login, customer accounts, member areas, and any old or forgotten login pages.
How to fix it
Any website
- Make sure your site has a valid security certificate. Most hosts provide one free. Look for "SSL", "TLS" or "HTTPS" in your hosting panel, or ask support to turn it on.
- Check that
https://yoursite.comloads with a padlock. If it does not, fix that first, since there is nothing to redirect to yet. - Turn on a redirect from http to https for the whole site, not just the login page. Many hosts have a one-click "Force HTTPS" setting.
- If you or your staff logged in on the insecure page recently, especially on public Wi-Fi, change those passwords once the fix is in place.
WordPress
- Get https working first, through your host. Then under Settings, General, change both "WordPress Address" and "Site Address" to start with
https://. - Ask your host to redirect http to https at the server, or use the cPanel or Cloudflare steps below.
- To make sure the login and admin pages are never served insecurely, your developer can add
define( 'FORCE_SSL_ADMIN', true );towp-config.php. - Check for leftover login forms in widgets or member plugins that might link to an
http://address, and update them.
Shopify, Squarespace, Wix and other hosted builders
- These platforms issue certificates automatically for domains connected to them, and redirect to https by default. If a password page loads over http, the certificate may still be pending, or the domain may not be fully connected.
- Check the domain or SSL section of your site settings. Menu names vary, but each platform shows whether the certificate is active. If a newly connected domain still shows a problem after a day or two, contact the platform's support.
- If the insecure login page is not on the platform at all, such as an old member area on separate hosting, fix it there or remove it.
cPanel hosting
- Under Security, open "SSL/TLS Status" and run AutoSSL if your host includes it. This issues a free certificate for your domains.
- Then open Domains and turn on "Force HTTPS Redirect" for your domain. On older cPanel versions this switch may not exist; use the
.htaccessrule under "Apache or Nginx" instead.
Cloudflare
- Under SSL/TLS, Edge Certificates, turn on "Always Use HTTPS". Every http request is then redirected to https.
- Under SSL/TLS, set the encryption mode to "Full (strict)" if your server has its own valid certificate. The "Flexible" mode leaves the connection between Cloudflare and your server unencrypted, so the password still travels in the clear for part of its trip.
Apache or Nginx
- Install a certificate first, for example a free one from Let's Encrypt, and confirm https loads.
- On Apache, add the rewrite rule to the
.htaccessfile in your site's main folder, or to the site configuration. - On Nginx, make the port 80
serverblock redirect everything to https, test withnginx -t, and reload.
# Apache (.htaccess or site config)
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
# Nginx
server {
listen 80;
server_name yoursite.com www.yoursite.com;
return 301 https://$host$request_uri;
}
What to send your developer
A page containing <input type="password"> is served over http. Serve it over HTTPS, 301-redirect all http requests to https across the whole site, and make sure the login form posts to an https address. Once https is stable everywhere, add Strict-Transport-Security so browsers stop trying http at all. Behind a CDN, use full TLS to the origin, not a mode that downgrades the back leg.
Strict-Transport-Security: max-age=31536000; includeSubDomains
Common questions
Only I use this login page. Does it still matter?
Yes. Your admin password is the most valuable one on the site. If you ever log in over public Wi-Fi, it can be captured, and whoever has it controls your site.
Does https cost money?
Usually not. Most hosts include free certificates, often from Let's Encrypt, and hosted builders include them automatically. You should not need to buy one for a typical small business site.
My site has https. Why is this still flagged?
Because the http version still loads without redirecting, at least for that page. Having a certificate is only half the fix. Every http address also needs to send visitors to its https version.