0

I'm completely stumped with this issue:

When visiting a website which is a virtual host, without SSL support and with no reference to any https:// scheme within its database, or any file within it's themes, configuration etc. (this is a WordPress website), Chrome is rewriting links within the page to use the https:// scheme.

The issue does not occur when visiting the website using Firefox, or IE. The host OS is Windows 7.

I've tried the following, without success:

  • Remove the user's local Chrome data, in case it's a caching issue
  • Installed the latest Chrome
  • Disabled all plugins
  • Disabled anti-virus programmes
  • Cleared the hostname from Chrome's HSTS database found at chrome://net-internals - also discussed here Chrome: how to stop redirect from http:// to https://

Note: the web server is only listening on port 443 with an SSL cert for the host web server's hostname.

For extra clarity, for example, the web server is responding with the raw HTML:

<html>
...
<a href="http://hostname">link</a>
...
</html>

Chrome is rewriting the links within the page so that it's rendered as:

<html>
...
<a href="https://hostname">link</a>
...
</html>

Further suggestions as to what might be causing this, would be greatly appreciated.

  • Does it happen only with WordPress, or even with static .html pages from the same host? Can you verify with Wireshark that it is receiving a href="http://" from the server? – user1686 Jul 23 '15 at 12:30
  • I think that is a chrome policy so if the domain has https:// access and you try to use http chrome will revert that in automatic – emirjonb Jul 23 '15 at 12:44
  • Thanks @grawity - as I was about to compare static/dynamic page headers, someone called with the solution, below. – zoot Jul 23 '15 at 13:21
2

My customer's son called, having looked at WooCommerce which was installed and discovered the reason. The official WooCommerce release:

http://develop.woothemes.com/woocommerce/2015/07/woocommerce-2-3-13-security-and-maintenance-release/

One small but important fix in 2.3.12 was related to SSL detection. WooCommerce for the most part relies on the WordPress function is_ssl() to detect whether or not a page is being served via SSL. WooCommerce had a small function for making this function compatible with some edge-case hosting environments. This however was causing some installs of Google Chrome to incorrectly think a URL was SSL.

| improve this answer | |

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.