My American Heritage™ dictionary defines a proxy as "a person authorized to act for another; an agent or a substitute."
If you own some stock in a company, chances are you've been exposed to the term already. Most companies in which you own stock hold annual stockholders meetings and most of the many thousands (or millions) of people that own the shares of stock in the company cannot usually afford to attend such meetings. Thus, the company oftentimes sends you a form asking you to authorize another person -- usually a high muckity-muck within the company or the financial genius that manages your portfolio -- to attend the meeting for you instead and vote on issues on your behalf. This person -- your proxy -- represents you at the meeting and votes on your behalf on stockholder issues. He or she is a "substitute" for you, and does things, such as voting on shareholder issues, on your behalf. They're an 'intermediary' and do the things you would (assumedly) normally do, had you actually had the luxury of being able to attend the meeting yourself.
A computer proxy is similar in that, it too, does things on another's behalf. In this case, the proxy is working on behalf of your web browser. Normally, your browser is the one that accesses the files (i.e. web pages) whenever you surf the WWW (World Wide Web) (or "World Wide Wait" as some people call it). When your browser is configured to use a proxy, however, instead of accessing the web directly like it normally does, it asks the proxy to do it. The browser sends the requests to the proxy which then issues the requests to the web to retrieve the requested file and returns the results back to the browser. Thus, the proxy acts as an 'intermediary' (or "middle man") between your browser and the web. It (the proxy) is the one that's accessing the web -- on the browser's behalf -- and not your browser itself.
A proxy server is a software program running on your computer that your browser "talks to". It (your browser) 'connects' to the proxy through a specific 'port number' and issues all web requests through that port. The proxy server then receives those requests, interprets them, and issues the appropriate HTTP requests to retrieve the specific file that the browser wants. The remote server, out on the web, then sends the response (the requested file) back to the proxy server (since it's the one that issued the request), whereupon it then interprets the response from the remote server and passes the result back to the browser through the same original logical port it made the request on.
In this way, the proxy server "sees" and processes all web requests that your browser makes. This is what allows the AdCruncher™ Proxy Server to filter out banner ads. Whenever your browser issues a request (through AdCruncher™) for a file that it notices is actually a request for a banner ad (by checking its internal filter list that you control!), it immediately returns a 'dummy' file to the browser instead without having to actually access the Internet to get it. This makes surfing the web faster and more enjoyable since time is not wasted retrieving unwanted files, and your screen remains uncluttered with those distracting banner ads!
Banner ads... Don't you hate them? I do... which is why I wrote this program. :)
Some web pages (actually, most of them it seems these days) have banner ads on them, but with the AdCruncher™ Proxy, banner ads are now history!
If you're familiar with HTML code and have ever looked at the source for a web page, you know what banner ads are. They're simply HTML "<IMAGE>" tags that direct the browser to retrieve a given image file (usually a moving gif or jpeg) to be displayed on your screen at a given location. As the browser is receiving the web page, if it sees an "<IMAGE>" tag with a URL, it requests that file from the web and upon receiving it, displays it on your screen.
When AdCruncher™ receives such a request, however, it doesn't even bother going out to the web to get the file and simply returns a small internal HTML file back to your browser instead. This satisfies the browser's request for that file, but since the file is not the image file it normally expects, what it usually ends up displaying on your screen is an empty box where the image would normally be. These empty boxes on your screen -- usually with a small "X" in the upper left hand corner -- are called "broken links" by some people since what is displayed looks similar, if not identical, to what you see whenever the browser can't find the image it's looking for. The hyperlink, however, is not broken. It still works. Clicking on the box will still take you to whatever web page that hyperlink was for. You just don't see the banner ad that is normally displayed in that box, that's all.
Cookies are small text files that the browser and the remote server (hosting the file your browser is currently accessing) exchange with one another. The purpose of cookies is to provide the remote server with additional information about you (the person visiting their site or accessing their file) so it can perform whatever it needs to do on your behalf.
A good example of this is what occurs when you visit a site that requires you to log in (e.g. one of the many free web-based email services that are available, for example). When you first visit their web site, they need to know who you are (that is, who wants to log in). That information is contained in your cookie that the browser sends to the remote server whenever it requests that particular web page. The remote server then knows, upon receiving the cookie, who you are, and can use the information to look up your account to verify the password you enter matches the one in its database for example.
This cookie file might also contain other information unique to you, such as your 'user preferences' (i.e. the names of the folders you have created, and other options unique to the service you're using). The remote server uses this information to know how it should 'build' the web page to be displayed on your computer. If you change one of your options, for example, the remote server sends a cookie back to your browser with the updated options information for the browser to save on your hard drive in a cookie file (so it can be used the next time you visit their site; the option that you changed it thus "remembered' for the next time).
The idea here is the information the remote server needs regarding who you are and what your options are, are saved not in the remote server's database, but on your hard drive instead. The rationale behind this, I imagine, is because the designers felt it made more sense for personal information (i.e. information unique to each individual user) to be saved on each individual user's computer and simply passed back and forth when needed, rather than have the remote server save all of this information for all of the many millions of customers it has on their computer.
Oftentimes, you don't even know this exchange of information is even taking place, since many browsers do all this passing back and forth of cookie information silently, without even letting you know it's happening. Some browsers, such as Netscape and Internet Explorer, have a configuration option that allows you to change this default 'silent' behavior (so you are instead asked whether it's okay or not to save the updated cookie information on your computer), and it is strongly recommended that you make use of this option if privacy is a concern for you (since the cookie mechanism is often subject to abuse).
Some web site operators use cookies to track who visits their site and how often, and unless you have the previously mentioned option enabled in your browser, you don't even know this information about you is being passed back and forth. To add insult to injury, some web sites over-use cookies, sending them back and forth with almost each and every request, so even if you do enable the option, you end up having to reject several dozen cookie requests (or more!) just to get the darn page to load.
With AdCruncher™ Proxy, such concerns are a thing of the past. All cookie requests -- both to and from the remote server -- are automatically filtered, so your web pages load faster without having to answer a thousand cookie requests, and no information about you is unintentionally passed on to the remote server. This cookie filtering is enabled for all sites by default, but is configurable (via the Filtering Lists -- explained further below) to allow cookies for those sites where you actually must have them (i.e. those previously mentioned sites where you have to "log in").
If you wish to see which sites are currently 'tracking' your visits, take a look at the "C:\Windows\Cookies" directory on your computer and check out how many files there are there. Chances are, there are several dozen or more. Each one of these cookie files corresponds to a web site that you have visited in the past where information about your visit was saved.
Each time you revisit that web site, whatever information is contained in the corresponding cookie file is automatically sent by your browser to the remote server, even if you have your browser configured to ask you first!
Unless you use AdCruncher™ that is. :)
Yep. It's true. Without AdCruncher™ (or some other filtering proxy with a similar feature), your browser will still send whatever cookie information it has to the remote server whenever you visit their site, and only asks you whether or not it's okay to write a new or updated cookie to your system. (The "Ask me before accepting cookies" option only prevents new cookies from being created or existing cookies from being updated, but does not prevent existing cookie information from always being sent!)
Without AdCruncher™, the only way to prevent existing cookie information from being sent to the remote server each time you visit their site is to manually delete the cookie file (and I strongly recommend you do so for all cookie files for all sites where you don't actually need them -- e.g. those you have to log into -- which is probably most (if not all) of them). Once you delete the cookie files you don't need, and are using AdCruncher™, you never again have to worry about cookies files being accidentally (or surreptitiously) sent to remote servers. AdCruncher™ automatically removes all cookie requests going both to, and coming from, the remote server, so your privacy is protected and your surfing more enjoyable since you don't have to manually reject a thousand-and-one cookie requests just to get that web page to load.
The Referer[sic] header is an HTTP header that your browser sends to a remote server whenever you click on a hyperlink (but is not sent if you manually enter a URL through the keyboard rather than by clicking on a link), and tells the remote server which web page contained the link to the web page your browser is now requesting.
The "Referer"[*] header was originally designed to simply provide an easy way for a web site operator to learn which other web pages contain links to their particular web page(s), and nothing more. But because the referer field does indeed tell them which web page you came from in order to reach their web page, it can, in theory, also be used by a web site operator to learn of which web pages you visit and is thus a security/privacy concern for most users.
Thus, starting with version 2.0.0, AdCruncher™ Proxy now has the ability to filter Referer headers if so desired. Simply enable the "Referer: filtering" option on the "Options" tab of the Proxy Properties dialog.
* The header is named "Referer" (rather than "Referrer") because it was accidently misspelled by someone when the original specifications for the HTTP protocol was first published, and the original authors feel that it is now too late to change it since most every HTTP program in existence only recognizes "Referer" as the name of the header since that was how the it was spelled in the original publication. :)
"Pop ups" are secondary browser windows that seem to 'magically' appear whenever you visit certain web sites (most notably geocities.com and tripod.com).
These pop-up windows are created via certain "script" commands (usually javascript) embedded within the web page you're visiting and are, to most people, even more annoying than banner ads (since you have to manually close the window to make them go away).
AdCruncher™ has the ability to disable scripting (javascript, vbscript and java applets too) to prevent these annoying popup windows from appearing. It does this by modifying -- on the fly -- the actual HTML code in the web page being returned back to the browser.
If the feature is enabled (controlled via the 'Scripts' filter; see the "Scripts Filtering" section on the web page that discusses "Filtering" for details) then whenever AdCruncher™ sees certain strings pertaining to scripting on the web page being retrieved, it changes them to something else so the browser does not recognize them. This prevents the browser from ever executing the script (since from its point of view the web page doesn't even contain any script at all) causing the popup window to never get created.
Since some web pages, however, use scripts to do things other than for creating annoying popup windows (such as to modify the appearance of a button or other image as your mouse moves over it for example), the scripts filtering feature is designed so you can, if so desired, disable all scripts except certain ones at a given site. See the "Scripts Filters" section on the web page on "Filtering" for details.