Some people have asked about the cost of running a web site. It really depends on how big it is.
First let me explain what "big" means. It isn't the amount of data and graphics that matters, it's the telecoms that are the main cost. But when you have a lot of content (I have 500 million files on more than 50,000 gigabytes of space) then the cost of hardware also becomes an issue.
You can run a web site for free, if you get free web space from your service provider. Typically, you'll get a small amount space. What they don't tell you, is that if you start getting a lot of hits (people accessing your site) then they change their minds.
For a small site (where you serve a hundred megabytes per month or so) you can go to one of the cheap service providers, and pay $60 per year (you can pay a lot more), to get web space. They call this a personal site, meaning they aren't expecting it to get many hits.
As soon as you talk about a large site, the economics change. Large means when you get a lot of hits, the megabytes of space isn't the issue. Many Internet Service Providers have a single T1 line (AT&T call it a T1.5, it's also called a DS1), which means that their maximum throughput, for all their users combined, is 1.544 (or is it 1.536, I find both numbers, even in the same document) megabits per second, which is about 700 megabytes per hour. You can find out more about T1 lines if you like. Since load patterns are never even (peak load at 7-8 pm is about three times minimum load at 5-6 am) this means that a site that absorbs 600 mb of load during the peak hour, has exhausted the capacity of the line. As a rough rule of thumb, a T1 will support about 10 gigabytes per day.
After T1, you can get T3, which is 45 megabits (44.736 to be precise). Obviously, that costs more, but not 30 times as much. You can get fractional T3
What I actually have, is the equivalent of sixty T1 connections (it's more complicated that that, it's actually 100 megabits, the same as you get in most local area networks). This lets me serve 12.5 megabytes per second, in theory. In practice, you can never completely fill a pipe, so I might only be able to do 12 megabyte per second. That's 1200 gigabytes per day.
OK, that's bandwidth. You need three other things to make a web site; servers (CPU power), disk space (gigabytes) and labour.
This site runs on several servers, mostly Dell machines, because I like them and I'm used to them.
Then there's the pre-processing (making mpgs, jpgs, and suchlike), so there's several servers that aren't public-access. One server monitors all the public computers, and tells me when she sees a major problem.
And there's lots more, and it keeps changing (the list above is probably out of date by the time you read it, I use a spreadsheet just to track the computers). And each computer of importance, has another one that twins it, so that if it goes down, I can quickly switch to the twin. That should mean that outages will be fairly short. Of course, if something big goes wrong on the internet, it's possible that I could have a long outage.
Why do I need so many computers? Because this is a *big* web site. And it's cheaper to get a computer to do work on it, than to hire people. So, a lot of the computers are there because otherwise I'd need a person. I'd estimate there's about 40-50 computers making up this site.
Why am I using my own design? Well I realised that I don't have to hunt around what's available to find what's closest to what I need. I can buy a case, motherboard, memory, hard drives, and use a screwdriver and about an hour to bolt it all together. It was a wonderful feeling of liberation, and it's quite a satisfying feeling when it works. Plus, it's a *lot* cheaper than buying ready-built.
And it isn't just servers. There's firewalls, routers, hubs, switches, UPSes, tape backup, scanners, video capture, VCRs, camcorders, digital cameras and an absolute spaghetti of cables.
Labour. I don't count my own time, but sometimes I have to pay other people to do things. Not often, though. I find that I can do most things myself. Those people need to buy groceries, they can't work for nothing.
And that's the bottom line. You can do a small site for free, because the costs are low, so they don't signify. A big web site costs money to make.
But it's a lot of fun to do!