There are two basic ways to do this whether you're creating just a personal website or a dedicated photography website.
The first is to use one of the many free webhosting services like Geocities, Fortunecity or Bravenet. These services often offer simple site building tools, but they also usually run their own banner ads on your website, which usually doesn't look very good. They also often limit what you can run in the way of site features (they don't offer database support for example), plus they have limited storage space and limited data transfer. However they usually go to great lengths to make setting up a simple website very simple, and often have tools like counters and guestbooks which are easily integrated into a site. If you're a total technical novice, starting out with a free site might be a learning experience.
However using one of these services and having a URL like "mysite.geocities.com" doesn't portray a very professional image and neither do banner ads over which you have no control. You really don't want ads for mortgages, insurance and gambling sites on your photography pages. It's really much better to have your own website with a URL like "mysite.com" as your web address.
So the second - and ultimately much better - way to setup a website is to register you own domain name and host your site on a commercial web hosting site. This isn't expensive. Registering a domain name costs less than $10/year and hosting for a small website can be done for $50/year. You can even host a pretty big website for under $100/yr.
The advantage of having your own domain is that it's portable - you can host it with any web hosting company you want to - and it's permanent (as long as you pay the registration fee each year). If you build up traffic, it still goes to your website even if you switch hosts. It's also up to you to run advertising of your choice (or not) on your website. In most cases you can also receive email at your domain, so your email address is "email@example.com" rather than "firstname.lastname@example.org".
If you build up traffic on a free hosting service, then decide to get your own domain and website, the traffic you have built and the search engine listings you have generated will go to a non-existent site! You might be able to get them to redirect your traffic for a while, but it's a lot better to start out with your own domain right from the start. In that case you keep all the links and traffic that you have worked hard to build up.