I have an idea fo creating a P2P network - like Gnutella, eDonkey2000, or FastTrack - to be used for hosting web pages. This can minimize the cost of getting a dedicated server and domain names. A web site is a group of files (HTML, PHP, images, etc) having the same ID (protocol://site-name.com). A person can initially have thes pages on his PC and allow them to be shared by the P2P Client/Server when someone requests a page from that site the page is downloaded from the initial host, and cached on the requesters machine as well. Further requesters can retrieve the pages from any of them. The more popular the site is the more hosts it is cached on. This may also help in thecase of free-riders. One problem here is generating the site-names as they must be unique across the whole network, but I think that some distributed Naming Service Data Base can help.
*** Added on 28 January, 6:44 PM ***
It came out that there is such thing already, see Freenet Project
Tags: P2P, Internet, Gr33n Data