Proxy server for ubuntu and php programing on Zend fraimword 2013
A proxy server receives a request for an Internet service (such as a Web page request) from a user. If it passes filtering requirements, the proxy server, assuming it is also a cache server , looks in its local cache of previously downloaded Web pages. If it finds the page, it returns it to the user without needing to forward the request to the Internet. If the page is not in the cache, the proxy server, acting as a client on behalf of the user, uses one of its own IP addresses to request the page from the server out on the Internet. When the page is returned, the proxy server relates it to the original request and forwards it on to the user.
Uses of Proxy:
- A proxy server has a variety of potential purposes, including:
To keep machines behind it anonymous, mainly for security.
To speed up access to resources (using caching). Web proxies are commonly used to cache web pages from a web server.
To prevent downloading the same content multiple times (and save bandwidth).
To log / audit usage, e.g. to provide company employee Internet usage reporting.
To scan transmitted content for malware before delivery.
To scan outbound content, e.g., for data loss prevention.
To apply access policy to network services or content, e.g. to block undesired sites.
To access sites prohibited or filtered by your ISP or institution.
To bypass security / parental controls.
To circumvent Internet filtering to access content otherwise blocked by governments.
To allow a web site to make web requests to externally hosted resources (e.g. images, music files, etc.) when cross-domain restrictions prohibit the web site from linking directly to the outside domains.
To allow the browser to make web requests to externally hosted content on behalf of a website when cross-domain restrictions (in place to protect websites from the likes of data theft) prohibit the browser from directly accessing the outside domains.
An advantage of a proxy server is that its cache can serve all users. If one or more Internet sites are frequently requested, these are likely to be in the proxy's cache, which will improve user response time. In fact, there are special servers called cache servers. A proxy can also do logging.
To the user, the proxy server is invisible; all Internet requests and returned responses appear to be directly with the addressed Internet server. (The proxy is not quite invisible; its IP address has to be specified as a configuration option to the browser or other protocol program.)
The functions of proxy, firewall, and caching can be in separate server programs or combined in a single package. Different server programs can be in different computers. For example, a proxy server may in the same machine with a firewall server or it may be on a separate server and forward requests through the firewall.