Hi!
Dem Mann kann geholfen werden. Zitat aus http://www.php.net/manual/en/function.fopen.php
"As of PHP 4.3.0, if you have compiled in support for OpenSSL, you may use "https://" to open an HTTP connection over SSL."
Naja, 4.3 ist 1. noch nicht stable und 2. benötigt man doch PHP als Modul, oder sehe ich das falsch? Beides habe ich auf besagtem Server noch nicht und kann es auch nicht selbst installieren. 4.3 wird wohl früher oder später kommen, aber nicht als Modul.
Google suchen lassen: "php fsockopen https" und "php fsockopen ssl"
Letzteres liefert auch noch dies Zitat von http://www.php.net/manual/en/function.fsockopen.php
"As of PHP 4.3.0, if you have compiled in OpenSSL support, you may prefix the hostname with either 'ssl://' or 'tls://' to use an SSL or TLS client connection over TCP/IP to connect to the remote host."
Mit anderen Worten: Du musst PHP 4.3 selbst kompilieren und in deinen Apache einbinden, und zusätzlich OpenSSL-Unterstützung einbinden. OpenSSL zu kompilieren ist relativ leicht (hab ich schon einige Male gemacht, um OpenSSH kompilieren zu können). Wie einfach PHP 4.3 zur Mitarbeit im Apache zu bewegen ist, kann ich nicht sagen, da habe ich bislang immer fertige Pakete verwendet, in denen PHP schon drin war.
Genau darauf bin ich auch gestoßen, aber aus den obigen Gründen wird das erstmmal nicht möglich sein.
Aber mir ist auch eine Alternative untergekommen: CURL
Folgedes habe ich mal probiert(ich weiß das CURL funktioniert):
<?php
$URL="www.ccc.de/index.html";
exec("curl -m 120 -d https://$URL -L",$return_message_array, $return_number);
for ($i = 0; $i < count($return_message_array); $i++) {
$results = $results.$return_message_array[$i];
}
$res = explode(",",$results);
if ($res[0]=="0") {
print "Passed !!";
} else {
print "Failed :-(";
}
?>
Naja, und ich erhalte immer "Failed". Ne ganz wage IDee was ich falsch machen könnte? Und ich verstehe das richtig das mir dieser Aufruf der komplette Code der angefragten Adresse ausgegeben werden sollte, oder?
Grüße
Andreas