I'm not talking about comments... everything is fine with comments. Comments have to have their pages, so to speak, accessed and your suggestions work properly for comment pages.
This is all about the contact page area. Unfortunately, as the hackers have found out, their bots do NOT have to actually access the contact page or go anywhere near it. And so all the comment page protections are inappropriate. As they don't need to go anywhere near the contact page then conventional REFERER protection is equally irrelevant.
I spent an hour or two researching what this might mean.
This might explain a thing or two to a programmer:
http://www.faqts.com/knowledge_base/view.phtml/aid/15705/fid/2
<?php
function HTTP_Post($URL,$data, $referrer="") {
// parsing the given URL
$URL_Info=parse_url($URL);
// Building referrer
if($referrer=="") // if not given use this script as referrer
$referrer=$_SERVER["SCRIPT_URI"];
// making string from $data
foreach($data as $key=>$value)
$values[]="$key=".urlencode($value);
$data_string=implode("&",$values);
// Find out which port is needed - if not given use standard
(=80)
if(!isset($URL_Info["port"]))
$URL_Info["port"]=80;
// building POST-request:
$request.="POST ".$URL_Info["path"]." HTTP/1.1\n";
$request.="Host: ".$URL_Info["host"]."\n";
$request.="Referer: $referrer\n";
$request.="Content-type: application/x-www-form-urlencoded\n";
$request.="Content-length: ".strlen($data_string)."\n";
$request.="Connection: close\n";
$request.="\n";
$request.=$data_string."\n";
$fp = fsockopen($URL_Info["host"],$URL_Info["port"]);
fputs($fp, $request);
while(!feof($fp)) {
$result .= fgets($fp, 128);
}
fclose($fp);
return $result;
}
$output1=HTTP_Post("http://www.server1.com/script1.php",$_POST);
$output2=HTTP_Post("http://www.server2.com/script2.php",$_POST);
?>
Only thing is it doesn't tell me how I might stop it;~| It's late g'night.
----best wishes, Robert