Our team website is hosted by someone who knows one of our mentors, so we get it for free (or really, really cheap). Unfortunately, that means we don't get PHP support or shell access to anything.
My website,
www.robbayer.com, leeches bandwidth from my friend's dad's business DSL (don't worry, he encouraged it). My friend and I set up an old Linux server w/ Apache and I got all the networking stuff working along with a few name-based virtual servers so we could use one comp to host multiple sites. Anyway, it hosts my site, his site, and another server on the same DSL line hosts his dad's business' site. All-in-all, it works really well since I get root access to everything via SSH in addition to ftp, etc.