Web browsers and other HTTP-based user-agents have methods for explicitly setting a proxy address. For large organizations, this is a real hassle. You may simply have too many desktops to visit one at a time. Additionally, this approach isn't as flexible as the others. For example, you can't temporarily stop the flow of requests to the proxy or easily bypass the cache for certain troublesome sites.
Browsers usually give you the option to send HTTPS URLs to a proxy. Squid can handle HTTPS requests, although it can't cache the responses. Squid simply tunnels the encrypted traffic. Thus, you should configure the browser to proxy HTTPS requests only if your firewall prevents direct connections to secure sites.
To manually configure proxies with Netscape and Mozilla, follow this sequence of menus:
Manual proxy configuration
Fill in the HTTP Proxy address and Port fields. Enter the same values for FTP Proxy if you like.
To manually configure proxies in Internet Explorer, select the following sequence of menus:
View from the main window menu
Enable Use a proxy server and enter its address in the Address and Port fields
The Advanced button opens a new window in which you can enter different proxy addresses for different protocols (HTTP, FTP, etc.).
You can manually configure proxies in Konqueror by clicking on the following sequence of menus:
Proxies & Cache
Fill in the address for HTTP Proxy, and Port. Use the same values for other protocols if you like.
Here's how to find the proxy configuration screen in Opera browsers:
Enter an IP address (or hostname) and port number for HTTP, FTP, and other protocols as necessary.
The Lynx browser uses a configuration file, typically /usr/local/etc/lynx.cfg. There you'll find a number of settings for proxies. For example:
http_proxy:http://proxy.example.com:3128/ https_proxy:http://proxy.example.com:3128/ ftp_proxy:http://proxy.example.com:3128/
Lynx also accepts proxy configuration via environment variables, as described in the next section.
Some browsers and other user-agents look for proxy settings in environment variables. Note that the variable names are lowercase, unlike most environment variable names:
csh% setenv http_proxy http://proxy.example.com:3128/ csh% setenv ftp_proxy http://proxy.example.com:3128/ sh$ http_proxy=http://proxy.example.com:3128/ sh$ ftp_proxy=http://proxy.example.com:3128/ export http_proxy ftp_proxy
I've convinced myself that the following products and packages check for these environment variables:
Python's urllib and urllib2