We describe the design of a system for a fast and reliable HTTP service termed Web++. Web++ achieves high reliability by dynamically replicating Web data among multiple Web servers. Web++ selects a server which is available and that is expected to provide the fastest response time. Furthermore, Web++ guarantees data delivery, provided that at least one server containing the requested data is available. After detecting a server failure, Web++ client requests are satisfied transparently to the client by another server. Web++ is built on top of the standard HTTP protocol and does not require any changes either in existing Web browsers, or the installation of any software on the client side. We implement a Web++ prototype; performance experiments indicate that Web++ improves the client response time on average by 36.6%, and in many cases by as much as 59%, when compared with the current Web performance.