Reverse proxy
From Wikipedia, the free encyclopedia
A reverse proxy is a proxy server that is installed within the neighborhood of one or more servers. Typically, reverse proxies are utilized in front of webservers. All connections coming from the Internet addressed to one of the webservers are routed through the proxy server, which may either deal with the request itself or pass the request wholly or partially to the main webserver.
Contrast this with 'forward proxy', which is a proxy server configured in the end-user's browser.
There are several reasons for installing reverse proxy servers:
- Security: the proxy server is an additional layer of defense and therefore protects the webservers further up the chain
- Encryption / SSL acceleration: when secure websites are created, the SSL encryption is sometimes not done by the webserver itself, but by a reverse proxy that is equipped with SSL acceleration hardware.
- Load distribution: the reverse proxy can distribute the load to several servers, each server serving its own application area. In the case of reverse proxying in the neighborhood of webservers, the reverse proxy may have to rewrite the URLs in each webpage (translation from externally known URLs to the internal locations).
- Caching static content: A reverse proxy can offload the webservers by caching static content, such as images. Proxy caches of this sort can often satisfy a considerable amount of website requests, greatly reducing the load on the central web server.
- Compression: the proxy server can optimize and compress the content to speed up the load time.
- Spoon feeding: if a program is producing the webpage on the webservers, the webservers can produce it, serve it to the reverse-proxy, which can spoon-feed it however slowly the clients need and then close the program rather than having to keep it open while the clients insist on being spoon fed.
[edit] See also
- Proxy server
- Squid cache is a proxy server software that may be installed in a reverse proxy configuration.
- The Apache HTTP Server may be used as a reverse proxy.
- varnishd is a very modern and free reverse proxy.
- BlueCoat - What is Reverse Proxy with SSL
- Microsoft ISA (Internet Security & Acceleration Server) provides proxy and reverse proxy as well as extensive firewall capabilities.
- Perlbal is a Perl-based reverse proxy load balancer and web server.
- FreeProxy Windows based free proxy server.
- Nginx - Web and Reverse proxy server.
- Sun Java System Web Server
- SwitchFlow Reverse Proxy is a C++ reverse proxy for Linux.
- Pound (official Homepage) is a free reverse proxy for load balancing.
- YXORP (official Homepage)is a reverse proxy for Unix with extensive firewall capabilities. It is freely available under the GPL.
- WebSEAL - What is WebSEAL? - A Word Definition From the Webopedia Computer Dictionary