We had run a server ourselves in the school on a basic Fedora Core 3 system and the whole Apache,MySQL,Php setup for it. (Our first attempt was with SuSE)
This all worked fine for a while but we did get hacked from China and our server was used as a spamming forwarder for a while to the point that our provider was threatening to shut us down. It was quite a bit of administration issues.
Moved the server box to someones office who could keep a closer occasional eye on the unwarranted traffic in it and the motherboard failed. Took a backup drive with it...
So we moved everything over to another server location at a professional web server business that is run by one of my past students.
Long and short of it is that you can do most of anything you want in either situation. A server box of your own should cost you more than 500 and less than 1000 for something real nice to work with but, if you don't watch your backups and restoration process close you can really be a deep poo-poo.
Which means someone needs to be a somewhat full time administrator for the service. It gets to a bit much when your doing a lot of it yourself (believe me I know)
Hope this is helpful.