As my slice is running low on memory, running multiply mongrel processes really isn't an option any more(I am too cheap to pay for more memory, in these trying economic times). Phusion passenger comes to the rescue! Phusion passenger is exactly what the rails community needed for its deployment story.
So I follow the instructions:
gem install passenger
When I did this my slice just hung indefinitely. It turns out that when gem updates the index of ruby gems, it downloads the entire index and puts it in memory, and this didn't fit in my tiny 256m I had on my slice. This thread ended up saving the day for me. I was able to do:
gem install passenger -B 1000000
it was slow but it worked.
Next up was installing the apache2 module:
passenger-install-apache2-module
First, it failed to find my apache2 installation and asked my to install it. I told it where it was by doing:
export APXS2=/usr/local/apache2/bin/apxs
Next, it didn't find the Apache Portable Runtime(APR). I told it where it was by doing:
export APR_CONFIG=/usr/local/apache2/bin/apr-1-config
Then, it didn't find the APU(whatever that is, I stopped caring). I did:
export APU_CONFIG=/usr/local/apache2/bin/apu-1-config
After all that, and running passenger-install-apache2-module again, it worked!
Next I setup the virtual host entries. I created the file /usr/local/apache2/conf/apps/tobyho.conf with these contents:
<VirtualHost *:80>
ServerName tobyho.com
DocumentRoot /var/www/apps/mywiki/public
<Directory "/var/www/apps/mywiki/public">
Options FollowSymLinks
AllowOverride None
Order allow,deny
Allow from all
</Directory>
</VirtualHost>
And now I got the wiki running on mod_rails. Yea!