Hi,
If you let us know what you want to do we can help you better.
Apache is a web server
Squid is a Web Proxy
A proxy server is a gateway for users to the Web at large. Users configure the proxy in their browser settings, and all HTTP requests are routed via the proxy. Proxies are typically operated by ISPs and network administrators, and serve several purposes: for example,
* to speed access to the Web by caching pages fetched, so that popular pages don't have to be re-fetched for every user
who views them.
* to enable controlled access to the web for users behind a firewall.
* to filter or transform web content.
Then we have
Reverse Proxy
A reverse proxy is a gateway for servers, and enables one web server to provide content from another transparently. As with a standard proxy, a reverse proxy may serve to improve performance of the web by caching; this is a simple way to mirror a website. Loadbalancing a heavy-duty application, or protecting a vulnerable one, are other common usages. But the most common reason to run a reverse proxy is to enable controlled access from the Web at large to servers behind a firewall.
The proxied server may be a webserver itself, or it may be an application server using a different protocol, or an application server with just rudimentary HTTP that needs to be shielded from the web at large. Since 2004, reverse proxying has been the preferred method of deploying JAVA/Tomcat applications on the Web, replacing the old mod_jk (itself a special-purpose reverse proxy module).
A typical proxy server will need to enable several modules. Those relevant to proxying include:
* mod_proxy: The core module deals with proxy infrastructure and
configuration and managing a proxy request.
* mod_proxy_http: This handles fetching documents with HTTP and
HTTPS.
* mod_proxy_ftp: This handles fetching documents with FTP.
* mod_proxy_connect: This handles the CONNECT method for secure
(SSL) tunneling.
* mod_proxy_ajp: This handles the AJP protocol for Tomcat
and similar backend servers.
* mod_proxy_balancer implements clustering and load-balancing
over multiple backends.
* mod_cache, mod_disk_cache, mod_mem_cache: These deal with managing
a document cache. To enable caching requires mod_cache and one or
both of disk_cache and mem_cache.
* mod_proxy_html: This rewrites HTML links into a proxy’s address
space.
* mod_headers: This modifies HTTP request and response headers.
* mod_deflate: Negotiates compression with clients and backends.
Last edited by prayag_pjs; 10-14-2010 at 01:07 AM.
|