This system allows you to make changes to a website and preview them before actually going live. It can be implemented with any website, we will show the necessary requirements and steps to implement with symfony and Apostrophe CMS, but you can also take parts of the tutorial and implement them without these applications. We have found this workflow suitable in a number of projects and wanted to share it.
The process can be modified to fit the needs of your symfony application (or really any app with enough tweaking) since it uses several "off the shelf" tools like Apache, PHP, symfony, Gearman and Supervisord. The sfSyncContentPlugin plugin is a bit more specific to Apostrophe, though. They walk you through the integration of all of the tools - starting up Gearman and Supervisord, making a worker and setting up your symfony configuration to have a "publish" route to set things in motion.