HTTP and HTTPS

Why My Canonical URL Shows Both HTTP and HTTPS (And How to Fix It)

Canonical tags are essential for SEO. They help search engines identify the primary version of a page to avoid indexing duplicates. However, what happens if your canonical URL includes both http:// and https://? This issue can confuse search engines, harm rankings, and lead to poor SEO performance.

In this guide, we’ll explore why this problem occurs, how to fix it, and how resolving it ties into maintaining a strong canonical strategy.

What Is a Canonical URL?

A canonical URL tells search engines which version of a page is the authoritative one. For example, a page could exist at:

  • http://example.com
  • https://example.com
  • http://www.example.com
  • https://www.example.com

Search engines may treat these as separate pages without a canonical tag, leading to duplicate content issues. If your canonical URL includes both http:// and https://, it confuses search engines about which version to prioritize.

Why Does Your Canonical URL Include Both HTTP and HTTPS?

Here are the main reasons why this happens:

1. Mixed Settings in WordPress

WordPress settings control how your site URL appears. If your WordPress or Site Address uses http:// while other configurations use https://, it creates conflicts.

2. Incomplete HTTPS Migration

When you migrate your site from http:// to https://, you must update several settings. If you miss a step, your site may serve some content over http://, which can affect the canonical tag.

3. Server Misconfiguration

Your web server may not redirect all traffic to HTTPS. This allows both http:// and https:// versions of your site to remain accessible.

4. Plugin Conflicts

SEO plugins like Yoast or Rank Math may override canonical tags. They can insert both protocols into the canonical URL if not configured correctly.

5. Mixed Content

If your site loads some resources (e.g., images, scripts) over http://, it can cause issues with the canonical URL.

Why Fixing This Problem Matters

Leaving both http:// and https:// in your canonical URL can harm your website in several ways:

  • Confuses Search Engines: Google may not know which version to prioritize, leading to lower rankings.
  • Duplicate Content Issues: Both versions compete for ranking, diluting your SEO efforts.
  • Hurts User Trust: Visitors may see security warnings when accessing the http:// version.

Fixing this problem ensures search engines and users always access your site’s secure, preferred version.

How to Fix the Issue

Follow these steps to resolve the problem and ensure a consistent canonical URL.

1. Update WordPress Settings

Ensure your WordPress site uses https:// for both the WordPress and Site addresses.

Steps:

  1. Log in to your WordPress dashboard.
  2. Go to Settings > General.
  3. Update the WordPress Address (URL) and Site Address (URL) to use https://.
  4. Click Save Changes.

This ensures WordPress generates URLs with the correct protocol.

2. Redirect HTTP to HTTPS

Use your .htaccess file (for Apache servers) or your server configuration (for Nginx) to redirect all traffic to HTTPS.

For Apache:

Add the following code to your .htaccess file:

RewriteEngine On

RewriteCond %{HTTPS} !=on

RewriteRule ^(.*)$ https://%{HTTP_HOST}/$1 [R=301,L]

For Nginx:

Add this code to your server block:

server {

    listen 80;

    server_name example.com www.example.com;

    return 301 https://$server_name$request_uri;

}

This ensures all visitors and search engines are redirected to the HTTPS version.

3. Fix Mixed Content Issues

Mixed content occurs when some resources (like images or scripts) load over http:// on an https:// page.

Steps:

  1. Install a plugin like Really Simple SSL.
  2. Run a scan to detect mixed content issues.
  3. Update all internal links and resources to use https://.

This step ensures your canonical tag reflects the secure version of your site.

4. Check SEO Plugin Settings

If you use an SEO plugin like Yoast or Rank Math, check its settings to ensure the canonical URL points to https://.

Steps for Rank Math:

  1. Go to the post or page editor.
  2. Under the Rank Math Advanced Settings, set the canonical URL to the https:// version.
  3. Save your changes.

Steps for Yoast SEO:

  1. Go to SEO > Search Appearance.
  2. Verify that the canonical URLs are configured correctly in the advanced settings.

5. Test and Validate Canonical URLs

After making changes, test your site to ensure the canonical URLs are correct.

Tools to Use:

  • Google Search Console: Use the URL Inspection Tool to check the canonical URL for specific pages.
  • Screaming Frog: Crawl your site and verify the canonical tags.
  • WhyNoPadlock: Check for mixed content issues.

How This Relates to Broader Canonical Issues

Fixing http:// and https:// conflicts is part of maintaining a clean canonical strategy. If your canonical URLs are inconsistent, you risk encountering issues like the “Alternate Page with Proper Canonical Tag” error flagged by Google Search Console.

This error occurs when duplicate pages have canonical tags pointing to the preferred version but are still listed as duplicates. Resolving http:// and https:// issues ensures that Google can correctly identify the primary version of your pages. Check out the article to fix this.

Conclusion

Having both http:// and https:// in your canonical URL can confuse search engines and harm your SEO. The issue often stems from mixed settings, incomplete migrations, or server misconfigurations.

By following the steps in this guide, you can ensure your canonical URLs are consistent and point to the secure version of your site. This not only improves SEO but also builds trust with visitors.