Hallo,
nachdem ich endlich das PostToHost zu meiner Testseite am Laufen habe, wollte ich nun einen Request an die echte Seite senden und kriege da prompt einen error 400.
Hier nochmal der maßgebliche php-code:
function PostToHost($host, $path, $referer, $data_to_send) {
$fp = fsockopen($host, 443, $errno, $errstr, 30);
if(!$fp){
printf $errstr;
} else {
fputs($fp, "POST $path HTTP/1.1\r\n");
fputs($fp, "Host: $host\r\n");
fputs($fp, "Referer: $referer\r\n");
fputs($fp, "Content-type: application/x-www-form-urlencoded\r\n");
fputs($fp, "Content-length: ". strlen($data_to_send) ."\r\n");
fputs($fp, "Connection: close\r\n\r\n");
fputs($fp, $data_to_send);
while(!feof($fp)) {
$res .= fgets($fp, 1000);
}
fclose($fp);
return $res;
}
}
$host = "ssl://derfremdeserver.de";
$path = "/x520";
$referer = "www.ich.de";
$data = "a=irgendwas&b=nochwas&c=auchnochwas$d=usw";
$x = PostToHost($host, $path, $referer, $data)
Wie gesagt, bei meiner Testseite läuft das.
Ich hab das auch mit anderen Seiten probiert, nie ein error 400.
Der Unterschied sind lediglich, das SSL und der Port.
Was meckert der andere Server da rum?
Will der noch was besonderes wegen dem SSL?
Danke schonmal :)