Before I answer your question, you should really know how a web server functions, in case you don't already. A web server works by "answering" HTTP requests from clients over the internet. The clients request for a certain file/webpage and the web server sends it back. So pretty much every time you visit a website or refresh a page, your computer is asking a web server somewhere in the world to send back a certain webpage.
Now, let's get to the basics of a web server. A web server is like any other computer, except it specializes in dealing with the internet and handling requests. The more requests, the more stress and load the machine will have to handle at once. This requires a lot of processing power, so it is important that you make sure you have a good processor. Most processors these days use the Intel Xeon line of processors. I'd recommend looking at the Xeon 3400 series, it's a great place to start. Next, you'll also be looking at RAM. Web servers need a substantial amount of RAM, around 4 to 8 gigabytes should be fine. As for hard drive storage, you're really not gonna need that much storage. A 250gb hard drive should be fine, unless you plan on allowing users to upload videos, pictures, etc. Then, you may need to expand to a SAN (storage area network) configuration, where multiple terabytes of information can be stored and accessed by your server. You should also consider getting a RAID controller and a second 250gb hard drive. What this does is make your hard drive setup redundant, where as when one hard drive fails, the other can pick up the slack and keep your system running. Speaking of redundancy, you should also consider a redundant PSU unit, in case the power in your house ever goes out.
Next, you'll be looking for software and an OS to run your system on. Most large enterprises use commercial versions of Linux, such as Red Hat or Novell SUSE. However, those cost thousands of dollars, and you have to renew a license (which costs a lot) to keep using them. Ubuntu, which is a very popular Linux OS also released its own version of Linux specifically for servers. Its a great place to start, and the best part is it's free. Next, there's all of that server-side scripting which you may find handy if you ever want to make a login database or something. Download XAMPP, which is pretty much a package of Apache (makes your computer work as an HTTP web server), PHP (Access databases, If / and functions, etc...Facebook uses it),MySQL (The most common database you'll find), PHPMyAdmin (Makes your life much easier), Perl (Kinda like PHP), and much more.
So pretty much, you need a server with a good processor with a good amount of RAM. You could look at IBM (mostly enterprise servers), HP (mostly high end, some better for beginners), or Dell (Much cheaper costwise). Remember, just keep in mind speed and redundancy. Redundancy is key to having no server downtime, or minimum downtime and speed will help you serve web pages faster. Then, install a Linux OS (Ubuntu server, it's free), and XAMPP to get started. Good Luck!