DIY

Do it yourself. The only reason I chose this is because I have done it myself. You will learn a lot about what web hosting and domain registration is. I will go through a little step by step of what you will need to do to host yourself. First install a web server… I suggest downloading a LAMP (Linux Apache MySQL PHP) server. Setup your server to have a local private static IP, such as 192.168.0.100. This will allow you to do port forwarding on your router so you can access your server over the web. Forward port 80 to the IP 192.168.0.100 of your server. Wow now you have a Web host now you need a Domain name. For this setup I would go to a site like this and register a sub-domain. This would be free to do. Now how do you update the Domain name to point to the public IP of your server? You can set this up by going here.

The main reason I wrote up The DIY method is that it is cool to know how something is done. I like to tinker and try new things out and this costs nothing. Now to the downsides, first this is very hard to setup. Hosting from your home may be allowed under the terms of service of your ISP. Lastly if you are trying to have fast access to your content that may be hindered because for hosting your upload and download speeds are flipped so instead of 10mbps downloads and 512k uploads when you access your host you will only be getting 512k downloads from that server.

Fat Cow

Well from what I can see from this site is a cheap all you can eat buffet. You even get a free domain with service. It looks like you can have a basic plan for 12 month for $44.04. That’s not too bad. I looked up some reviews because I have never used them. For the most part they seem to have good prices over all but when buying there are upgrades pre clicked so make sure you only have want you want checked. The customer service and site usability seem to be good too. There were a few bad comments on service but I think if you look hard enough you can always find bad comments.
Fat Cow

SDF or Freeshell.org

I have used SDF before and that is why I am writing on them. The bad, first you have to be a little more technically savvy to use them such as using command line UNIX a little. And activation of your account can take time because you have to verify who you are by paying through PayPal and have a technician activate your account. To the good. Their service is an ala carte menu. Anything you may want to upgrade to has an option. This means you may need to understand what you want but there is no bloat. To tell you the truth the main reason I even know about SDF is because I wanted to play with a Unix shell account and they had hosting too so I used it.
SDF