Where is my site actually stored? How can I move my Plone instance between different servers? What should I back up?
In which directories on the local host are the elements of the site actually stored? Which files do I need to back up? How do I move my Plone instance to a different server?
Content
Plone stores objects in a Zope Object Database (ZODB).
Approches to ZODB storage include:
- FileStorage — a single
.fsfile - binary large objects (BLOBs).
Plone 3 always uses:
- FileStorage, normally
var/filestorage/Data.fs
In addition, Plone 3 may use:
- plone.app.blob to support BLOBs.
Plone 4 uses:
- BLOBs for file and image content, normally within
var/blobstorage - FileStorage for all other content types.
Backups
Backup of FileStorage and BLOBs is critical.
For sane backup of FileStorage whilst Plone is running, a script is provided. To simplify scripted backups, recent versions of Plone use a recipe: collective.recipe.backup.
In addition, to ensure correct versions should you need to restore, you may back up:
- your
buildout.cfgfile productsandsrcdirectories.
For details, see Backup Plone.
Moving content
To move from one server to another (for example, from a local Windows-based laptop to a centrally hosted Linux server), with identical product versions on each server, you should move:
- at least,
Data.fs - plus, any BLOBS.
If you have a locally hosted Plone site and want to transfer it to your ISP, please be aware that your ISP has to support Plone hosting. It is possible to render a Plone site to static HTML using tools like CMFDeployment, but it is not recommended, as you lose a lot of the advantage of Plone's dynamic nature - and it is also a non-trivial setup exercise.
For details, see Upgrading and moving.
