title: Preventing site being scraped
body: <p>There is a wordpress site hosted at <a href="http://www.vibrantneo.org" rel="nofollow">http://www.vibrantneo.org</a> and is currently being cloned at  <a href="http://vibrantneo.123productpages.com/" rel="nofollow">http://vibrantneo.123productpages.com/</a> <strong>somehow</strong>. The very odd part is that this particular domain (<a href="http://www.123productpages.com" rel="nofollow">http://www.123productpages.com</a>) seems to do this to <strong>A LOT</strong> of content, yet there are no complaints posted around the web.</p>
  
  <p>This service was not opted into. It was done without consent. I've checked Firebug and there is no mention of referencing the site's original server. Is this a malicious site? Why is there no discussion about this 'service' affecting others?</p>
  
  <p><strong>* UPDATE *</strong>
  Turns out that this 123productpages is in fact referencing the <a href="http://www.vibrantneo.org" rel="nofollow">http://www.vibrantneo.org</a>'s actual files on the host somehow. For example: changing the wp-config to invalid credentials brings down both sites.</p>
  
  <p>Probably a trojan of sorts. Still confusing as to how this domain and it's practices haven't been made more public. Hopefully this post finds its way to people with the same problem while I pinpoint the point of failure.</p>
  
  <p><strong>* UPDATE #2 *</strong>
  So it looks like it's not as malicious as I suspected. Although still very unethical. It looks like it's as simple as pulling in content and changing all references to their domain. All content is still hosted on the real server.</p>
  
  <p>For example: <a href="http://blah.123productpages.com" rel="nofollow">http://blah.123productpages.com</a> would mirror www.blah.com. Granted they would have to 'setup' that particular domain on their end it seems.</p>
  
  <p>My current fix involves adding a simple snippet of js to check the psuedo encrypted domain and see if it's the proper domain and redirect if it isn't.</p>
  
  <p>The following is an example of blah.com. <code>domain</code> is just the domain, blah.com separated by simple 123 (a more complex key can be produced, of course).</p>
  
  <pre><code>&lt;script type="text/javascript"&gt;
      var u = top.location.toString();
      var domain = 'b123l123a123h123.123c123o123o123m'.toString();
      var domain_decrypted = domain.replace(/123/gi, '');
  
      if (u.indexOf(domain_decrypted) == -1) {
          top.location = 'http://' + domain_decrypted;
      }
  &lt;/script&gt;
  </code></pre>