This is exactly what I did on dreamhost.com
I made a domain like usual, lets call it cake.example.com
in the root directory I had the cake directory which I simlinked as just 'cake'
So it was /home/myusername/cake which contains the cake unzipped.
in my homedirectory I edited the file .bash_profile and added this line at the bottom of the file.
export PATH=$PATH:/home/myusername/cake/cake/console
Then you need to logout and log in again or source the .bash_profile
Now you can bake.
After you bake your app inside cake.example.com you have to edit the file /home/myusername/cake.example.com/webroot/index.php
if (!defined('CAKE_CORE_INCLUDE_PATH')) {
//define ('CAKE_CORE_INCLUDE_PATH', 'FULL PATH TO DIRECTORY WHERE CAKE CORE IS INSTALLED. DO NOT ADD A TRAILING DIRECTORY SEPARATOR');
//You should also use the DS define to separate your directories
define('CAKE_CORE_INCLUDE_PATH', '/home/myusername/cake');
}
You see in the last line, you point it to the cake source directory. This way you can actually have many cake apps all using the same cake app directory.
Kind of sweet right ?
But that is not all. Inside the /home/myusername/cake.example.com
You need to create a .htaccess file and put this inside it.
<IfModule mod_rewrite.c>
RewriteEngine on
rewriteRule ^(.*) http://cake.example.com/$1 [L]
RewriteRule ^.* http://cake.example.com%1 [R=permanent,L]
</IfModule>
And now you are on your way to cake bliss.