Trick Ranking Software to Use Random Proxies

There are myriad options for rank tracking software, the most common of which probably being WebPosition Gold, but hardly any of them actually do a decent job of using proxies to prevent from getting banned. For example, WPG only allows you to choose 1 proxy, while in a perfect world you would be shifting through hundreds. Now, if you wrote your own rank-tracking software, you would not be running into this problem. However, for the majority of SEOs, writing custom software is a waste of time and money. So, how can you trick any search ranking software to use different proxies?

Requirements

  1. A LAMP Server – you can get a cheap one from Linode. I would highly recommend them. ($19.95/mo)
  2. A PHP Developer – There are really only a handful of lines of code to deal with, but an expert should be able to knock this out quick
  3. An open-proxy list – You are on your own for this one. Plenty of resources available to find them.

Step 1: The Hosts File

The real beauty of this method is it’s simplicity. Any ranking software will rely on the same connection methodologies as the computer upon which it runs. Thus, by simply editing the hosts file, you can trick the application to proxy through your own server!

Simply add the lines to your host file (c:/Windows/system 32/drivers/etc/hosts) being sure to switch the xxx.xxx.xxx.xxx with the IP address of your server…

xxx.xxx.xxx.xxx google.com
xxx.xxx.xxx.xxx www.google.com

Step 2. The vhosts File

Set up your LAMP server as if you were actually running the site google.com. Depending upon your Linux build, it will probably be located at /etc/httpd/conf.d/vhosts.conf

NameVirtualHost *:80
<VirtualHost *:80>
DocumentRoot /var/www/html
ServerName www.google.com
ServerAlias google.com
</VirtualHost>

Step 3. The PHP

Set up a folder in /var/www/html named search (/var/www/html/search). In that folder, create an index.php file and use a variant of the following code…

<?
$uri = $_SERVER[‘REQUEST_URI’];
$proxies = file(“proxylist.txt”);
shuffle($proxies);
$proxy = trim(array_pop($proxies));

$ch = curl_init(“http://www.google.com$uri”);
curl_setopt($ch, CURLOPT_USERAGENT, “Mozilla/5.0 (Windows; U; MSIE 7.0; Windows NT 6.0; en-US)”);
curl_setopt($ch, CURLOPT_HTTPAUTH, CURLAUTH_ANY);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
curl_setopt($ch, CURLOPT_PROXY, $proxy);
$data = curl_exec($ch);
echo $data;

?>

Step 4. Create the Proxy List

Now simply create a file called proxylist.txt with 1 proxy per line (make sure you include the proxy port!).

The End Result

Now, whenever your rank check software attempts to search Google, it will go through your webserver instead. Then, your webserver will interpret the request via the index.php file which will choose a random proxy and print the results of the attempted search to the page. Your rank check software will never know the difference. And Google will still think your an average web surfer.

1 Comment

  1. Matt Longley
    Nov 7, 2008

    Thanks for the article on this topic. I have been doing some research on some other alternatives, but that looks like a great idea.

Submit a Comment

Your email address will not be published. Required fields are marked *