SSL

Really Simple SSL 2.5.24 – minor multisite fix

Today Really Simple SSL 2.5.24 was released. Apart from the renaming of a css class, there was only one important change, and this one affecting only sites which:

  • are multisite
  • with the network back-end already on SSL
  • and Really Simple SSL not activated yet

To see why this can be a problem I need to explain how WordPress handles SSL. If a site is loaded over https, the server usually passes something like $_SERVER[“https”] = “on”. On some servers it doesn’t and WordPress may end up in a redirect loop. Really Simple SSL fixes that,  but that’s not what I’m getting at.

WordPress uses this to decide if is_ssl() is true or not. If is_ssl() is true, core functions like home_url(), admin_url(), etc will start returning https URL’s. On multisite this applies to domains from other blogs in the network as well. This is fine…unless you are visiting blog A on https, and looking at a link to blog B which is on http. WordPress now thinks: is_ssl() is true, so the url for site B will return a https link! If you don’t have an SSL certificate on site B, this can be a serious issue.

To fix this, we have created two filters (as of 2.3.10), which check if a blog is on http or https, and return the site url or admin url with the corresponding protocol.

But… in some edge cases when:

  • You have a blog or the main blog, or at least the back-end, redirected to https
  • The site_url of the current site is http, not https
  • Really Simple SSL is not enabled yet (otherwise site_url would be https)

Then the following happens: WordPress is redirected to https, but Really Simple SSL sees the url is not on https, so forces the url back to http. A broken css styling is the result. Enabling SSL on that site fixes it, but it might cause some stress.

To fix this, we have adjusted the admin filter so they won’t force back the URL to http if the URL that is requested is for the current blog id. Now Really Simple SSL won’t redirect back to http when the admin is loaded over https.

Related Articles

  • Really Simple SSL 2.5.20

    Today a minor update for Really Simple SSL was released. No major changes: New option: switch mixed content fixer hook In most sites the template_redirect hook works fine as hook...
  • 2.3.5 Released

    Versino 2.3.5 was released today. A 2.3.4 version was released earlier today, but contained a small bug: the javascript redirect was not added correctly anymore. As the javascript should be...
  • Mentions and tagging for Ultimate Member social activity

    We just released a cool new plugin on really-simple-plugins.com, UM Tagging, with which you can add @mention or @tagging functionality in Ultimate Member. It is integrated with the Ultimate Member...
  • Easy Digital Downloads Gravity Forms license integration

    As we use Easy Digital Downloads software licensing for plugin upgrade handling in combination with Gravity Forms to handle support requests, I missed a simple automatic license check in Gravity...