The HOWTO describes how to install TurboGears app on a shared hosting account, whereas Apache forwards HTTP requests to the CherryPy server and installation files is sandboxed to user's homedir (vs. usual system-wide setup).
it's a bit lengthy, probably need to be trimmed
Prepare non-root python environment
This is easy with Ian Bicking's script:
$ wget http://svn.colorstudy.com/home/ianb/non_root_python.py $ python2.4 non_root_python.py
This copies system Python2.4 files to your ~/bin, ~/lib/python2.4 and ~/include directories. The "non-root" python executable will reside in ~/bin.
Install TurboGears itself
$ svn co http://www.turbogears.org/svn/turbogears/branches/1.0 turbogears $ cd turbogears $ ~/bin/python setup.py install
Note that I also had to install Kid and Cheetah from SVN; this is currently required for TG to operate properly. To verify the install try to run ~/bin/tg-admin command.
Install Turbogears application
Next step is to install your application. If you're using an egg (and I think there is no valid reason you shouldn't) it's simply a matter of running ~/bin/easy_install -s ~/bin TheApp-1.0.egg. Btw, to build an egg just run setup.py bdist_egg from within your development copy.
Configure the application
This is a matter of writing proper prod.cfg and putting it to correct place.
The settings to pay attention to are: sqlobject.dburi, server.socket_port and server.log_file. In a shared hosting setup, the socket_port and log directory to use are given by the hoster so just make sure you've specified them correctly.
When running proxied behind Apache you will also need to add the following to the setup:
[/] base_url_filter.on = True base_url_filter.use_x_forward_host = True
This ensures CherryPy will use "X-Forwarded-Host" header set by Apache to figure out publicly-visible address of the application.