WordPress MultiSiteManager Documentation

MultiSiteManager (MSM) is a WordPress plugin which will perform two of the most important tasks of an administrator: backups and upgrades. MSM can manage any number of WordPress installations from one “master” WP installation. To manage a WordPress website with MSM, you need FTP access to the site.

Please read this page carefully to the end! Not doing so can result in malfunction as well as data loss and/or damage!

Contents

Installation

Download

Plobleme beim Entpacken? Probiere es mit der neuesten Version von 7zip.

Please donate, using the form on the upper right of this page! You will support our efforts and receive a backlink!

First, pick one master installation for MSM. This site will have the MSM panels where you can manage your backups and upgrades for other sites. The master should be on a server with much space for the backups, a good network connection and enough power and memory for the complex tasks of making backups and upgrading. Important: Safe Mode on the master must be deactivated, external file access must be allowed. MSM will not work if these requirements are not met.

To make MSM ready for work on the master, you must do the following:

  • Upload the plugin directory msm to the master’s plugin directory (wp-content/plugins).
  • Make the directory msm/work writable by the webserver.
  • Inside the master’s wp-content directory, create a new directory msm_backups and make it writable by the webserver.
  • Activate the plugin in the master’s admin panel.

The plugin is now basically ready to work. You will still need to set up sites to manage, but this is explained below.

Usage

Configure sites

Add a site

  • Go to the page MultiSiteManager -> Sites. Click Add a site »
  • Fill in the form. Explainations are shown if you hover the question marks beneath the form with the mouse.
  • Click Test and Save. If there are any errors, please correct them and test/save again. Unless all settings for this site are correct, you will not be able to use it.
  • Repeat these steps for all sites you want to manage. Of course, you can add new sites any time later, too.

Manage sites

On the page MultiSiteManager -> Sites, you see a table with your pages.

You can choose to edit an entry, which will lead you to a screen similar to the “Add a site” screen. You are able to edit the site’s settings here. After each modification, the site settings are tested again. Note that the site settings are only tested when you add/change a site. This means that if e.g. you change your FTP password, MSM will still treat the configuration as correct, until you change and save the configuration. (Of course, the configuration is tested before any actual backups/upgrades.)

You can also choose to delete an entry. Deleting an entry will only remove the site details, not the backups for this site.

Backups and Upgrades

To run backups and upgrades, go to MultiSiteManager in the main WordPress menu. You will see a table with all your sites.

To run backups and upgrades, go to MultiSiteManager in the main WordPress menu. You will see a table with all your sites.

MultiSiteManager MultiSiteManager backups
(Click to enlarge)

The first column shows the site URL, the current WP version of the site, and whether the configuration is ok or not. In the second column, you must enter the FTP password for every site on which you want to perform a backup and/or upgrade. In the third column, you can define which type of backup you want: files, backups, both or none (see “What is backuped?” for more). In the fourth column, you can configure the upgrade for the respective site: No upgrade at all, upgrade to the latest available version, or upgrade to any other version from the WP release archive (enter the version number into the little input field).

As soon you have entered the FTP passwords and choosen the backups/upgrades settings, you can hit the Run button. The actions will then start. Note: The backups and upgrades can take from some seconds up to 20 minutes and more, depending from things like: to server and network performance, number of sites selected, amount of data to backup, and many more. Do never under, no circumstances, abort the backup/upgrades process. You will most likely end up with data lost and or damaged!

What is included in the backups?

Note that files will backup all files and directories which usually belong to a WordPress installation, including wp-content. So if you have big uploads in the wp-content directory of that site, you should either expect very lenghty backups, or choose a different backup method than MSM. Also note that non-Wordpress files/directories found in the base directory are not saved! For example, if you have a directory images in your WordPress root directory, this will not be saved.

The database backup creates a backup of all tables within the WordPress database which have the table prefix defined in the wp-config.php of the respective site.

A word of warning

MultiSiteManager has been created with the greatest care. Anyway, there are so many different software configurations out there, so it might be that an upgrade or backup doesn’t work properly. As for backups, if you created a backup with MSM, you should at least once test a so-called restore: This means that you must take the backups created by MSM and install a new WP site from them, to confirm that the data is not corrupt. Because, if you don’t test the integrity of your backups before it’s too late, you might realize that all your backups are worth nothing at all.

(See also ”Known bugs„ below.)

Options

Not much at the moment, but you can set some options if you want to use a localized WordPress. Go to MultiSiteManager -> Options, each option is described.

Other things

Known bugs

Unfortunately, some testers have reported that the files backup doesn’t work for them, i.e. the files backup procedure fails at a certain point. (This will also cause an eventual database backup as well as an eventually choosen upgrade to fail – for the sake of safety.) The workaround for this problem is to omit the files backup (only for the site in question), and only perform a database backup and/or upgrade. If unsure, you can give it a try with the files backup, in the worst case it will simply fail, and you can try without it on the next run. I hope I can resolve this annoying problem in future releases.

Translations

Germanincluded

Translators for other languages are invited to send me language files. In your own interest, please ask me before, if a certain translation already exists (I’m a lazy uploader).

Frequently Asked Questions

Can I use this plugin to upgrade a WordPress installed via Fantastico?
Yes, you can. But you will most likely not be able to use Fantastico for this install afterwards. (Note: This information is based on what users reported.)

Questions? Feedback? Found a bug?

Please leave a comment below.

Please support my efforts!

Developing this plugin took many, many hours of work! (Really! You don’t believe how much work it is to create decent software.) Please: honour this work with a little donation!

27 Kommentare zu „WordPress MultiSiteManager“

  1. Vladimir Prelovac am 8. Juli 2008 um 14:22 #

    Great plugin and good work!

    Now, remote plugin updates too? Like update all option in my Plugin Central.

    Cheers

  2. NSpeaks am 10. Juli 2008 um 12:30 #

    After adding the site and clicking test and save, it gave the error:

    Fatal error: Cannot redeclare class ftp_base in /home/navjot/public_html/nspeaks/wp-content/plugins/msm/lib/pemftp/ftp_class.php on line 11

    I am using Wordpress 2.5.1 and the site I was adding also uses this version only.

  3. Kristin K. Wangen am 15. Juli 2008 um 12:21 #

    I really like the idea behind this plugin, but when I try to backup files it creates a backup directory in a backup directory in a backup directory and so on.
    And none of my themes and plugins are backed up.
    All directories are writeable.
    Upgrading worked okay.

  4. Alex Günsche am 15. Juli 2008 um 13:57 #

    NSpeaks: Thanks for the hint. I’ve decided to rename the FTP classes, as there seems to be some other, stupid plugin which loads the FTP classes on each page.

    Kristin: Strange, wp-content/ should be included in the backups. Could you tell me what OS and what FTP server you have (in case you know)?

  5. Kristin K. Wangen am 15. Juli 2008 um 18:35 #

    The blog I used for testing is hosted on DreamHost, - not sure if that helps a bit?

  6. chris carvache am 16. Juli 2008 um 20:18 #

    All this does is give me a blank screen hence some php error. Does this work if the FTP host REQUIRES a passive FTP connection to function correctly?

  7. Alex Günsche am 16. Juli 2008 um 21:56 #

    Kristin: Hm, unfortunately not. I don’t know what setup Dreamhost has. Any other Dreamhost users around? Maybe I should code a “debugger” toolkit to gather information that the user can send to me. :-|

    Chris: Usually, the plugin will use passive mode anyway. Do you get a specific error message?

  8. Ian am 17. Juli 2008 um 14:32 #

    Looks like a great plugin but I can’t get it to work. I installed it and setup my sites, but nothing happens when I try to do a backup and update.

    Also the admin screen that I see looks nothing like your screenshots… any ideas why?

    I’m running 0.1-beta3 and WordPress 2.6

  9. Ian am 17. Juli 2008 um 14:39 #

    I figured out the problem: It wasn’t loading the CSS and JS because of the $URL variable it was adding two slashes in the url. // instead of just one. Can this befixed for a future version?

  10. Alex Günsche am 17. Juli 2008 um 14:41 #

    Ian, thanks for the hint. I will fix this, although I’m astonished that a double slash causes a problem, because I would expect that any proper piece of software is able to translate this to a real path.

  11. jasonfg am 20. Juli 2008 um 12:03 #

    i like the idea behind this plugin, but i am worried about security of it.

    if i understand corrcetly i will end up with a directory that due to the required file permissions is visible to the whole world, containing both php files and database backups?

    then if someone were to find this directory they could easily find out all the information they would need to know to be able to hack all my wordpres sites, or at least access all the data from them. they could see for example the email addresses of every user registered on all my sites!

    if i am wrong, please tell me because i think it could be a very useful plugin that would save me lot of time!

  12. Dimitar Tsonev am 20. Juli 2008 um 22:44 #

    Strange, the lang directory is empty with no sample file.

  13. James am 21. Juli 2008 um 10:18 #

    Hi there,

    This looks fantastic - just what I have been looking for! However, I can’t get past “Remote file access appears to be disabled! We need to retrieve files from the outside, so please activate remote file access.”.

    I’ve done the following in my php.ini :

    safe_mode = off ;
    allow_url_fopen = on ;

    But it still errors as above. Any ideas? :o /

  14. Alex Günsche am 21. Juli 2008 um 17:46 #

    jasonfg: I understand your considerations. I admit that there’s a little trade-off between convenience and security. First: yes, theoretically, someone can download a backup file. But the backups are stored in a subdirectory with an alpha-numeric random name, and it’s virtually impossible to download one of the backup files. As for local users, the mentioned subdirectory has mode 0700, which means that only the webserver proccess can access it, no other user. This means of course that another user who can have the webserver execute scripts, can theoretically write a script to read your backups. However, the vast majority of webservers, especially those set up for shared hosting, forbid such a behaviour, usually by chrooting each user. I will however update the instructions to warn people to check their server and/or ask their provider about the setup.

    Dimitar: This is correct, there are no translations so far, as this is a beta. It is true that the instructions say that German is included, but this only refers to my development version. Sorry for the confusion.

    James: What do the respective lines in the phpinfo() output say? Are there differences between “Local value” and “Master value”? What PHP version on what OS are you running?

  15. James am 21. Juli 2008 um 18:07 #

    Hi Alex,

    Thanks for your reply. phpinfo() correctly shows safe_mode off and allow_url_fopen on, both local and master. I’m running PHP 4.4.8 on a hosted Linux (Redhat Enterprise) box.

    James

  16. James am 21. Juli 2008 um 18:13 #

    Additional info - I have switched that host to PHP 5.2.5 and get the same. Again, options are correct for both local and master.

    James

  17. Eugen am 23. Juli 2008 um 21:35 #

    OK, nice plugin, tried for several of my blogs. The upgrade process worked well, no worry here. Anyways that saved me a lot of time, and I can’t thank u enough. Oh, wait, I can! As soon as my Paypal account is full again I will do it.

    But I a problem. Even though the backup function works, I mean it creates the backups, I am not able to download them. Not even using a ftp client. The plugin changes the CHMOD to 700 and no acces is allowed. Any ideas what to do?

    I am using wordpress 2.6, PHP 5 and all others requirements are met.

  18. Ian am 27. Juli 2008 um 04:14 #

    I tried out the MSM on some sites, and it gave me an error that it couldn’t load the wp-config.php file from the site I was attempting to upgrade. Any idea what would cause this?

  19. Ron Smith am 28. Juli 2008 um 13:53 #

    Dumb newbie question:

    How do I turn “safe mode” off on the blog site?

    I have installed msm and am trying to add the first site. The error message I get is:

    Your site configuration is not ok.
    Error while writing a test file to wp-includes/.

    This looks like a terrific idea. Can’t wait to start testing it out.

    Thanks

  20. James am 30. Juli 2008 um 20:01 #

    Hi Alex,

    Are you still here?

    James

  21. Ron Smith am 31. Juli 2008 um 18:11 #

    Anybody here?

  22. Alex Günsche am 7. August 2008 um 23:31 #

    Hi everybody,

    sorry for the long waiting; I was on vacation.

    James: I’m afraid I cannot solve the problem. You can however try to deactivating the checks in the code (remove the call of msm_prepare() in admin_run.php), if you’re sure that everything should work. Please try first on a not so important install, and please let me know what you experienced.

    Eugen: You should not use an FTP client, but rather the web interface. In case you desperately need to access the backups tree via FTP, have a look at the file tools/chmod.php.

    Ian: a remote wp_config.php is only fetched on a backup, not upgrade. Why it failed, I don’t know. Is there anything special about that remote site?

    Ron: Safe mode is turned off by the admin. As for the failed write test, can it be that the respecitve directory is not writable with the provided FTP credentials?

  23. Roman am 1. September 2008 um 13:47 #

    Bloody awesome plugin, next Rethel-beers are on me ;-)

  24. Alex Günsche am 2. September 2008 um 23:29 #

    Glad you like it! And your offer is much apprechiated, I’ll keep it in mind. ;)

  25. ovidiu am 10. September 2008 um 12:15 #

    hi there.
    I just tried updateing one of my sites from wp 2.6 t owp 2.6.2 with the latest version of your plugin as of now.

    the site I was trying to update was the local site and it seemed to work out well until it got to this point:

    * 12:54:42 Starting database backup.
    * 12:54:42 Creating and deploying database backup scripts … error: Error while creating/deploying remote database backup scripts! Messages from called procedure:
    o 12:54:42 Retrieving remote wp-config.php … error: Could not retrieve remote wp-config.php!

    any hints?

  26. Palindrom am 11. September 2008 um 17:23 #

    Hi,
    I’ve got the same error “Cannot redeclare class ftp_base in…” as stated in comment #2. I’m also using 2.5.1 . Is there any fix yet?

  27. Vladimir am 19. September 2008 um 09:58 #

    If the target wordpress installation is localized (for example 2.5.1 DE) would the plugin recognize this and install appropriate upgrade?

Please support our OpenSource developments. Donate some bucks! Use the form in the upper right of this page, and get a backlink!

Artikel kommentieren

 (wird nicht veröffentlicht)


Kommentare können bis zu 30 Minuten nach dem Veröffentlichen bearbeitet werden.