The first thing to distinguish are the types of hosting accounts. To keep it simple, there are three levels of hosting: shared, virtual private server (VPS), and dedicated. They are also in the order from least to most expensive. A shared hosting account is a web server with possibly hundreds of other people on it and all the server's resources are shared among all of you. A VPS is a few people on the same server, where each customer gets a subset of dedicated resources. A dedicated server is an entire server for yourself.
For your project, a shared hosting account will do just fine. I say that because it probably won't use a ton of bandwidth, space, or other server resources such as the CPU and memory. If it did, you could always upgrade down the road, but I think you'd be fine on a shared hosting account for at least several years.
That said, you do get what you paid for. No shared hosting provider is perfect. Sites will be down from time to time (couple times a month for 30 minutes at worst), whether it's maintenance or one of the hundreds of users maxing out the server's resources, causing the server to crash. Support will be a little bit slower compared to if you were a VPS or dedicated server customer. That's the con of a shared hosting account, but that's also why they are so cheap.
To give you some prices, shared hosting accounts are usually between $5-10/mo, a VPS can be anywhere between $40-60/mo, and a dedicated server is usually $100+/mo. So the shared account is definitely the only one in your current budget.
Now, you'll always want to register your domain from a company other than who your hosting provider will be. I personally get mine at GoDaddy, but another good option is NameCheap. The main reason being, is that the prices are usually more consistent and should you get into a dispute with your host at any point, your domain won't be jeopardized or held hostage by the host, meaning that as long as you have a recent back up of your website, you can leave any time.
You'll always want to pick a host that has been around for a long time e.g. 3+ years. There are many start up hosting companies that show up one day, get really great reviews, but can't afford operating after a while and then they disappear forever (with your content). A host that has been around for 3+ years, even if they have the occasional bad review, is still going to be a lot more stable.
The most recent shared hosting provider I've used was MidPhase. They aren't perfect, but the support and server uptime is good, and it will get you where you need to be. I'd recommend you take a look at them and compare them with maybe one or two other options you found on the Internet.
For your particular website I'd recommend a content management system. Lots of them are free, they provide you with decent website templates that you can modify at your leisure (or buy for really cheap ~$50 per template), and they have plenty of plugins to add capabilities and features to your website that you're looking for (photo gallery, contact form, etc). Specifically, I'd recommend the Wordpress CMS. It's well established, easy to use, has a good community, and it's free.
Lots of hosts nowadays have one-click installers. That means that Wordpress is most likely already pre-installed on the server and all you have to do is login to your control panel and "activate" it.
This information should get you started. Once you have something like Wordpress running, you can come back to CNET and ask more specific questions if you want.
Was this reply helpful? (5) (0)