I used to run this blog on a shared web hosting. Recently, I came across AppFog, a PaaS provider, who gives a generous free plan to developers (2GB of rams, and 10 services). It runs PHP, Django, Rails, and so forth.
So I gave it a try. Creating WordPress blog on AppFog is just 2-3 clicks away. You pick an application to deploy, and choose target site (Amazon US/AP, Windows Azure, Rackspace, …)
I went back to my old blog, and exported posts from Admin -> Tools -> Export. Then I logged in my new blog via a temporary URL (appname.ap01.aws.af.cm). I was impressed by WordPress Import Tool. It imports your posts/comments/pages, and also has an option to automatically download attachments from old blogs.
I reinstalled some plugins (WP-Syntax, LightBox), and picked some new theme. I am ready to migrate to this site now. I added a CNAME for nattster.siamdev.net to point to AppFog. (details)
Everything looks fine, I got my blog running on AppFog with all data, plugins, and themes. Two months later, I checked back, and ….
WordPress theme, plugins, and all attachments are missing from WordPress running on AppFog!
I refreshed my browser so many times, checking to see if CSS files are not properly loaded. But no lucks. Attachments are all gone too.
I checked the docs. It says
AppFog does not yet have a persistent data storage system, though we’re working on it. This means that the file system is volatile and any data that needs to be persistent should be included in the code base (by making all changes in a local development environment) or offloaded to a database or an external storage system like Amazon’s S3.
It means following WordPress functions will not (actually) work:
- File uploads to media library
- Install Themes/Plugins
- WordPress upgrades via Admin console
When you tried above things, it will look like it is working. But as soon as you stop or restart your application. Changes to files will not be saved. Your attachments will be gone. Theme is missing. This is because AppFog’s volatile storage allows your application to modify it data, but it will not persist.
Following is things I did to avoid above problems:
1. File uploads to media library
As suggested in AppFog doc, you need an external storage for your media. One blog post suggested that you can use Picasa to host images for WordPress. I installed Google+/Picasa Upload plugin.
2. Install Themes/Plugins
3. WordPress upgrades
I needed to download, and run WordPress in my local environment (LAMP). I did upgrades, and installed all plugins I need. Then I af update back to AppFog.
My WordPress blog is running okay on AppFog now!