Production Server Advice With Multisite Network

I am wrestling with an idea that would allow our clients to review their sites before we push updates and make things overall a little more clean.

Here are my thoughts…

I don’t know how viable each of the below ideas are, but I wanted to get some direction to help minimize research time.

1) Setup a clone of our network on our live server. Setup a new account (PLESK) and look into a way to push public files to and from the production environment. I know I will probably need to setup a dedicated IP (wildcard ssl), publish host record info, etc. The benefits are:

• a more accurate model of how the updates will perform in our live environment (Plesk versioning, LINUX, etc)

• the ability to give our clients a window of time to review the updates before the we go live

• Quicker up and down of public files.

2) Setup MAMP/WAMP or something like that with PLESK, download the site with each update (time-consuming), and publish the local environment with a different set of directives.

I don’t like:

• running different OS’s and configs. It just doesn’t feel as clean.

• I also don’t like the ftp locally obviously.

• the extra headache of syncing OS’s, etc.

• the possibility of additional licensing needs of PLESK

3) Local virtualization. Use something like VMWare to setup a local LAMP stack, sandbox the updates, and publish locally with host record directives.

I don’t like:

• the extra headache of syncing OS’s, etc.

• the possibility of additional licensing needs of PLESK

4) What I think may be pretty exciting would be setting up a virtualized copy on our server of our entire config and locking it from SERPS with limited access to clients. I don’t even know where to begin with this, but this sounds kind of interesting…

Options 1 and 4 seem the most clean to me at a glance. I don’t mind manually pushing the DB’s and changing the config. I think it would also be interesting to setup rules to automatically push the updates from production to live configs. Again, not real sure on how this would look.

I figure I would push all the files to the production environment periodically, and push everything but the wp-contents/uploads back to the live site.

I realize each one of these setups has nuances that need to be addressed. I have seen virtualization run so seamless that I can help but to think this is a good way to go, depending on feasibility.

Any thoughts are appreciated.

  • Vaughan
    • Support/SLS MockingJay

    Hi @maxwebgear,

    Most people just use a clone site for this, 2 seperate sites on created from backups. There isn’t much related to this on WP, however there are a couple of options you may want to look into.

    SitePush

    http://crowdfavorite.com/ramp/ (it’s premium cost) but if it does what it says on the box, the initial investment would certainly pay for itself when you consider time saved and the other benefits of using it for deploying sites.

    Hope this helps

  • maxwebgear
    • The Incredible Code Injector

    Okay, I talked this over with IT and they said cloning it with rsync and a mysql dump is not a problem.

    They also mentioned “that WordPress stores the site’s hostname in multiple places in the database” which is rightfully so. Do you have any suggestions on how to automate this or should I just manually do the DB portion for the production environment and not auto-config the MySQL cloning portion?

    Also I am thinking of excluding the wp-config file in rsync to prevent from having to reset the mySQL setting on the production environment. is that a good idea and would exclude any other files as well?

  • Jack Kitterhing
    • Code Norris

    Hi there @maxwebgear,

    Hope you’re well today! :slight_smile:

    On the syncing and changing any value in the database, make sure it’s not serialized data, if so you do risk corruption, a easy way to edit multiple values would be using https://github.com/interconnectit/Search-Replace-DB

    If you want to push and pull DB’s, I’d recommend setting up a Multisite, install WP migrate DB Pro https://deliciousbrains.com/wp-migrate-db-pro/

    You can then pull from the clients existing site, create a exact replica, make the changes, show the client and then replace the clients site database with that database. Making for a much smoother process.

    If you use rsync and exclude the wp-config.php you’ll still need to edit the values if you pull or push with the current domain, DB users, name and password.

    Thank you!

    Kind Regards

    Jack.

Thank NAME, for their help.

Let NAME know exactly why they deserved these points.

Gift a custom amount of points.