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

  • Help translate!

    Translation has become much easier, now it is integrated on the wordpress website. To help translate in your language, go to the translation page.
  • Version 2.2 released

    Yesterday the new version was released. With support for per site activation on WordPress multisite, easy uninstall option, and even less overhead on the front-end, which was pretty good already...
  • Really Simple SSL 3.0

    Shortly after reaching the 1 million active installations milestone, version 3.0 of Really Simple SSL has been released. This new version includes a number of tweaks and additions which further...
  • Really Simple SSL available in 21 languages!

    I noticed this morning that Really Simple SSL is now available in 21 languages, which is pretty cool! See also the translation page here:https://translate.wordpress.org/projects/wp-plugins/really-simple-ssl Really Simple SSL is now installed...