Hosting such sites won't cost a bomb, I got my own servers and
it didn't cost me more than $100 every month maintaining it, though
I'm abit budgetting, some servers stuff can cost more than
that.
How such sites earn money is mainly through advertisements, such as
the ads from google that you see on the left, and among the forum
topics. Then there's also the P-memberships. Finally, sometimes
it's not about the money. When you see that you have a website that
many people frequent, then there is some kinda pride thingy, you
won't understand until you have a site with high traffic and then
people ask if you got visit for example ericwebsite.com and then
you say, hey this website is mine!