Lots of disconnected sites after update of MainWP 4.5.0.1

The issue might be that Main WP Child 4.5.0.1 is not yet available through the plugin repository on WordPress.org?

All of my sites have disconnected from the dashboard. Deactivating then reactivating the child plugin works. Except, now I need to login to PhpMyAdmin and reset my login password for some of my sites because I rely on Main WP instead of a password manager.

I hope the fix works to reconnect our sites without us needing to disable then re-enable the child plugin in all the sites we manage.

The situation is a passing annoyance. You guys do great things with Main WP and I’m sure I speak for all of us here when I say we appreciate the MainWP team and the work you do.

Having the same issues now, I’ve tried to roll back to 4.5 but it’s still doing the same thing, it disconnects the sites at sync, I can reconnect them from the sites page but they disconnect during the sync process. It’s not the same sites, it seems to be random (multiple hosting environments). All things were ok till v4.5.0.1, it seemed to work ok on 4.5 but it got messed up with 4.5.0.1. The child sites are on 4.5 as there’s no 4.5.0.1 available. I’ve even restored a backup for the dashboard and it still does the same thing, something broke even at the child sites after they got synchronised one time with the 4.5.0.1.

Hopefully you can spot the bug without us needing to log in to every single site and reconnect them.

Meanwhile maybe it’s better to disable the 4.5.0.1 from the repository and make an announcement (fb, mail…) to not install it till you figure out what is happening.

Thank you.

1 Like

I can confirm that disabling and then re-enabling the MainWP child plugin on all affected sites appears to fix the issue.

DO NOT ROLLBACK - Because of the new signature algorithm used in this version rolling the plugin back can cause disconnection because the Dashboard and Child can no longer communicate.

We just put together a doc on rolling back and it goes for 4.5 and 4.5.0.1 - Downgrading MainWP Dashboard from 4.5+ to 4.4.3.4 - MainWP Documentation

Also - Custom Signature Algorithm and PHPSecLib as alternative to OpenSSL - MainWP Documentation

There is only 4.5 for the child site. There is no additional update for the plugin

If you are still experiencing issues we want to help!

Please open a help desk ticket

1 Like

Hi Dennis,

I understand the documentation, but this still doesn’t explain how it can be that everything is working fine during 4.5 beta versions and with 4.5 final including 4.5 child on all sites. Only after updating to 4.5.0.1 all sites got disconnected although it took some syncs before they all went down.

It has cost me my whole Saturday and it’s great that you want to help, but manually reconnecting was something only I could do, because I had to login to the child sites. So I understand the advice of @dcgavril:

I see similar issues in the Facebook group and on the wp.org forums, besides the posts that have been created here. So this is a big impact and actually I had hoped that this was a reason to limit the damage by removing the update and have the devs work on Saturday as well to figure this out en think of a way to fix it without manually logging in to every site. It’s not a disaster with a dozen of sites, but it is with 300+ like I have and I know that’s not a record.

You know I love MainWP, but I certainly don’t like this update and the way it’s been handled so far. So I hope you can find a solution that (although it won’t give my time back) will save time for all others and make sure something like this won’t happen again.

One test case I would like to propose for anyone still experiencing the issue and not fixing it by resetting the MainWP Child plugin on the child sites,

  1. Go to MainWP Dashboard > Manage Sites page
  2. Locate one child site that is disconnected and fails to reconnect
  3. Access the Site Edit page by clicking the site name or Edit action from the Actions menu
  4. Locate the OpenSSL Signature verification algorithm option and Select SHA1
  5. Save settings
  6. Try to reconnect and sync the site
  7. If all goes well, try to set back SHA256 or the option that inherits the option from General Settings.

(I am not sure this can resolve the problem because we can’t duplicate this problem on any of our setups. So it’s kind of a shot in the dark, but I think it’s worth trying because the SHA1 was the algorithm used before the 4.5 update.)

The change between 4.5 and 4.5.0.1 was in the logic of selecting the OpenSSL signature verification algorithm. In version 4.5, in order to use SHA256, the feature required a user to select the version and save settings so the algorithm is used. However, with version 4.5.0.1, we have set SHA256 as the default one because this algorithm is supported for both OpenSSL v1 and OpenSSL3, so there should be no compatibility problems.

In order to make this work, we had to add one more variable to the equation. We also added a check for the MainWP Child plugin version number, so SHA256 can be used ONLY if the MainWP Child plugin is updated to version 4.5. If the version is older, the system will use SHA1 until the MainWP Child plugin gets updated.

We did extensive testing on the 4.5.0.1 release across nine hosts and different server configurations that covered OpenSSL v1 and v3 configurations. In all our tests, everything went just fine. There were no issues detected after going through the Plugin update path 4.4.3.4 > 4.5/4.5-beta > 4.5.0.1.

We don’t want even one person to have an issue with an upgrade, but this was a major upgrade with a month of Beta testing, and we currently have about 20 reports out of approximately 7000 Dashboard upgrades. We have found that the part of issues so far are from people who rolled back after updating.

We agree on this and will run a full autopsy on the last week of the release and update the release SOPs as needed.

1 Like

Hi Bogdan,

Thank you for this technical answer, because it gives some more insight in this matter.

There are a few thing that don’t seem to be correct…

As you know I was one of the beta testers and I’ve installed every beta version following the update path without any downgrade. Everything was fine, even with 4.5. The problems started with the update from 4.5 to 4.5.0.1 That should have been a small update with only a few minor fixes. This has not been tested extensively as 4.5 was. My dashboard is hosted in a rather standerd environment and my client sites are hosted on all kinds of hosts, but they all had this issue.

I also didn’t rollback before the problem started. And I only tested the rollback from 4.5.0.1 to 4.5 after it went wrong. So it didn’t cause this issue.

Other reports indicate the exact same situation and not the update/rollback situation you mention.

1 Like

Exactly the same case for me, as I was saying earlier. The issue is with v4.5.0.1 and from what I can see in @bogdan message with the changes done in this small update, you’ve enforced a default SHA your all sites and most likely they’re haven’t been migrated correctly.

Frankly speaking I’m really wondering if just 20 people from 7000 as you say have these issues because my setup is as standard as it can be and the managed sites that get disconnected are hosted on many environments. I’ve been working as admin with webhosting environments for more that 20 years and whenever you play with the cryptographic settings there will always be chaos if the keys have not been migrated correctly in advance and well tested.

@bogdan if it’s of any help, I’m always activating the unique security id on the child sites and I don’t know if this can interfere with the generation of the keys or how the connection is done with the new versions.

@dennis I’ve not done the rollback to 4.4, I’ve done it from 4.5.0.1 to 4.5 because 4.5 was working before, and the new one didn’t, even if it should have been a very simple update (see the versioning). @bojan mentioned the Child version 4.5.0.1 and we thought that we’ve missed the update.

I’ve even reverted to a backup of the full WordPress install that had 4.5 installed instead of 4.5.0.1 and it was still creating issues with the child sites even if it was working ok before, so the new version had changed something on the child sites.

Reconnecting tens or hundreds of sites manually takes a lot of time.

As you’ve saw in my message on the Facebook post about this 4.5 version, I was disappointed in the direction MainWP is going with the UI (a myriad of menus) and the lack of focus on delivering what we actually need, and it seems these issues are not helping to make me believe otherwise.

Anyway, I will try to reconnect everything back and consider it as a necessity for improving the security of the MainWP setup, but really hope that bugs like these will not show up for a while.

1 Like

@bogdan @dennis @bojan I spent much of today reconnecting sites manually. I’m finding that some sites disconnect again when I manually try to synch the dashboard site with the child sites.

I tried reconfiguring the OpenSSL signature algorithm as suggested above. That made no difference.

I also deleted the MainWP cache under wp-content/uploads/. This has worked in the past when site’s had connectivity issues. Made no difference this time.

I use a unique key for all sites, too.

When you release the 4.5.0.1 Child plugin you will need to force the update to be installed and force the plugin to reactivate itself. Maybe include an auxiliary plugin in the main package that is automatically activated by the child plugin, and which once activated deactivates the child plugin, reactivates the child plugin then deactivates itself.

Same issue here. About 15% of my sites disconnect on syncing data. I can reconnect them manually, but they will disconnect again on sync.

It’s always the same websites that disconnect. They are hosted at various different hosts. SiteGround, Kinsta, WPEngine, Cloudways, Digital Ocean.

I did notice that the sites that disconnect are all sites that are in my care for a long time.

I had the same problem (58 websites disconnected of 97), I noticed that out of the 3 MAINWP dashboard sites I use, 2 didn’t have any problem but they don’t have any MAINWP extensions installed, only the one that has 7 plugins have the problem. A concern for internal consistency in MAINWP Dashboard?
I redid the connections by deactivating/reactivating the client plugins and everything works, big waste of time.

That’s an interesting situation. I’ve got multiple extensions installed on my dashboard. Could it be that one of the extensions is causing a mismatch in the signatures/algorithm settings on the child site? :thinking:
In my case I was 100% running all the latest available versions of the extensions, but it might be something for the devs to check if a there could be a relation.

This is my current systems report:


### WordPress Check                Required                                               Detected                                     Status   ###

FileSystem Method                  = direct                                               direct                                       Pass        
MultiSite Disabled                 =true                                                  true                                         Pass        
WordPress Memory Limit             >=64M                                                  512M                                         Pass        
WordPress Version                  >=3.6                                                  6.3                                          Pass        

### PHP                            Required                                               Detected                                     Status   ###

cURL Extension Enabled             =true                                                  true                                         Pass        
cURL Timeout                       >=300 seconds                                          300                                          Pass        
cURL Version                       >=7.29.0                                               7.61.1                                       Pass        
OpenSSL Version                    >=OpenSSL/1.1.0                                        OpenSSL/1.1.1k                               Pass        
OpenSSL Working Status             Yes                                                    Yes                                          Pass        
PCRE Backtracking Limit            >=10000                                                1000000                                      Pass        
PHP Allow URL fopen                N/A                                                    YES                                                      
PHP Disabled Functions             N/A                                                    No functions disabled.                                   
PHP Exif Support                   N/A                                                    YES                                                      
PHP IPTC Support                   N/A                                                    YES                                                      
PHP Loaded Extensions              N/A                                                    Core, PDO, Phar, Reflection, SPL, SimpleXML, Zend OPcache, bcmath, calendar, ctype, curl, date, dom, exif, fileinfo, filter, ftp, gd, gettext, hash, iconv, imagick, intl, ionCube Loader, json, libxml, litespeed, mbstring, mysqli, mysqlnd, openssl, pcre, pdo_mysql, pdo_sqlite, posix, redis, session, soap, sockets, sodium, sqlite3, standard, tokenizer, xml, xmlreader, xmlwriter, xsl, zip, zlib            
PHP Max Execution Time             >=30 seconds                                           30                                           Pass        
PHP Max Input Time                 >=30 seconds                                           60                                           Pass        
PHP Memory Limit                   >=128M                                                 512M                                         Pass        
PHP Post Max Size                  >=2M                                                   64M                                          Pass        
PHP Safe Mode Disabled             =true                                                  true                                         Pass        
PHP Upload Max Filesize            >=2M                                                   64M                                          Pass        
PHP Version                        >=7.4                                                  8.1.22                                       Pass        
PHP XML Support                    N/A                                                    YES                                                      
SSL Extension Enabled              =true                                                  true                                         Pass        
SSL Warnings                       = empty                                                                                             Pass        

### MySQL                          Required                                               Detected                                     Status   ###

MySQL Client Encoding              N/A                                                    utf8                                                     
MySQL Mode                         N/A                                                    ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION            
MySQL Version                      >=5.0                                                  10.6.14-MariaDB                              Pass        

### Server Configuration           Detected Value                                      ###

Accept Content                     text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7
Accept-Charset Content             N/A                                                    
Architecture                       64		 bit                                               
Gateway Interface                                                                         
HTTPS                              ON                                                     
Memory Usage                       22.54 MB                                               
Operating System                   Linux                                                  
Request Time                       1692634733                                             
Server Protocol                    HTTP/1.1                                               
Server self connect                Not expected HTTP response body:                       
Server Software                    LiteSpeed                                              
User Agent                         Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/115.0.0.0 Safari/537.36

### MainWP Dashboard Settings      Detected Value                                      ###

Abandoned plugins/themes tolerance 365                                                    
Basic uptime monitoring enabled    No                                                     
MainWP Dashboard Version           Latest: 4.5.0.1 | Detected: 4.5.0.1 Pass               
MainWP legacy backups enabled      No                                                     
Maximum number of comments         50                                                     
Maximum number of pages to return  50                                                     
Maximum number of posts to return  50                                                     
Maximum simultaneous install and update requests4                                                      
Maximum simultaneous requests      10                                                     
Maximum simultaneous requests per ip2                                                      
Maximum simultaneous sync requests 10                                                     
Minimum delay between requests     200                                                    
Minimum delay between requests to the same ip1500                                                   
Number of child sites              312                                                    
Optimize for shared hosting or big networksYes                                                    
Plugin advanced automatic updates enabledNo                                                     
Primary Backup System              MainWP UpdraftPlus Extension                           
REST API enabled                   No                                                     
Site health monitoring enabled     No                                                     
Theme advanced automatic updates enabledNo                                                     
Use WP Cron                        Yes                                                    
WP Core advanced automatic updates enabledNo                                                     

### Extensions                     Version                                                License                                      Status   ###

Activity Log for MainWP            2.1.0                                                                                                           
Advanced Uptime Monitor Extension  5.2.4                                                  Actived                                      Pass        
Dashboard Lock                     4.0.2                                                  Actived                                      Pass        
MainWP Cache Control Extension     4.0.3                                                  Actived                                      Pass        
MainWP Code Snippets Extension     4.0.3                                                  Actived                                      Pass        
MainWP Comments Extension          4.0.8                                                  Actived                                      Pass        
MainWP Custom Dashboard Extension  4.1.2                                                  Actived                                      Pass        
MainWP Database Updater Extension  4.0.3                                                  Actived                                      Pass        
MainWP Domain Monitor Extension    4.0.6                                                  Actived                                      Pass        
MainWP Favorites Extension         4.0.12                                                 Actived                                      Pass        
MainWP File Uploader Extension     4.1.1                                                  Actived                                      Pass        
MainWP Maintenance Extension       4.1.2                                                  Actived                                      Pass        
MainWP SSL Monitor Extension       4.0.5                                                  Actived                                      Pass        
MainWP Staging Extension           4.0.4                                                  Actived                                      Pass        
MainWP Sucuri Extension            4.0.14                                                 Actived                                      Pass        
MainWP UpdraftPlus Extension       4.0.9                                                  Actived                                      Pass        
MainWP Wordfence Extension         4.0.10                                                 Actived                                      Pass        

### Plugin                         Version                                                Status                                    ###

Activity Log for MainWP            2.1.0                                                  Active                                       
MainWP Child                       4.5                                                    Active                                       
MainWP Dashboard                   4.5.0.1                                                Active                                       
UpdraftPlus - Backup/Restore       2.23.9.26                                              Active                                       
Wordfence Security                 7.10.3                                                 Active                                       
WP Rollback                        1.7.3                                                  Active                                       

I have the same problem.

We’ve written a KB that covers two approaches to resolving the connection issues after updating to MainWP Dashboard 4.5:

If the steps outlined there don’t fix your connection issue, please open a Help Desk ticket, and we will gladly investigate further.

Has the second method already been tested successfully? Both methods are per site, so not a major issue if you have just a few sites, but very bad if you have hundreds or thousands of sites.

The second method (if working) might automated for a large number of sites, because you don’t have to login to every site.

Yes, the second method has been tested to work.

Those are the only two methods as of right now, and correct, they are both per site.

As a user, I am not satisfied with the update and how it has gone so far. We manage about 300 sites in the MainWP. 100 are now disconnected because of the bug. This means we now have to log into 100 sites manually and fix the bug. I don’t think it’s possible to create this kind of effort without doing it programmatically.

Currently I am unhappy with this state of the MainWP.

@bojan The methods suggested in the KB do not work sufficiently. Opening a support ticket will not help. This forum thread is the support ticket.

The solution that half works is as follows:

  1. In the dashboard site go to Settings > Advanced;
  2. Change the OpenSSL signature to OPENSSL_ALGO_SHA1;
  3. Go to the Overview page then resynch all sites. This will cause them to disconnect again;
  4. Go to Sites and filter by disconnected sites;
  5. Select all disconnected sites and use the dropdown options to select Reconnect;
  6. Reconnect the sites;
  7. The sites should now all be reconnected but you won’t be able to synchronise them because they will disconnect again but you will at least be able to login to your sites using MainWP.

If you try to change the SSL signature back to SHA256 all your sites will disconnect again and few of them will reconnect if you try to reconnect them. SHA1 seems to be the one that allows MainWP to half work.

I’ve tried the 2nd option to change to SHA1 and it’s not working, tried it couple of times, the site disconnects over and over again, and it seems that other people are having the same issues.

So I had to go to the 1st option to login to each site, disable and re-enable the child plugin, and this seems to work, some sites required it 2 times and even change the security id, but I blame it on the server caching (at least that’s what I believe). Anyway, lost a full day of work because of this, and hope that the next release will not disconnect them again.

I got the same problems.

Different websites on different hosters and with diffirent certs.

I can’t see anything in common yet.