Seite 2 von 2
Verfasst: 11.06.2007 17:15
von Pyramide
Jan500 hat geschrieben:hm snoopy ist doch (so wie ich das sehe) eine php classe, also du kannst die enthaltene php einfach inlcuden unf auf die class zugreifen
Allerdings setzt diese auch wieder auf curl auf.
larsneo hat geschrieben:(allow_url_fopen ist in der tat *bäh*)
Du meinst wohl allow_url_include. Das in letzter Zeit beliebte Deaktivieren von allow_url_fopen, fsockopen & co. führt nämlich zu der Situation, daß man eine Internet-Programmiersprache hat, die nicht aufs Internet zugreifen kann

.
Verfasst: 11.06.2007 17:22
von mgutt
Ok. Ich denke ich werde es so machen:
1. fsockopen()
2. get_meta_tags()
Bei fsockopen habe ich ein Timeout, bei get_meta_tags() nicht, aber ich gehe jetzt einfach mal davon aus, dass mein Server erreichbar ist
Ich gehe doch richtig der Annahme, dass wenn fsockopen() nicht verfügbar ist, die Anfrage auf fopen() sinnlos sein dürfte oder?
Hat jemand einen "total sicheren" Server und kann mal testen, ob trotz safe_mode und anderen Maßnahmen get_meta_tags() funktioniert?
EDIT:
Im Endeffekt müsste das die Lösung für mich sein:
Code: Alles auswählen
$host = 'example.com';
$file = '/';
$port = 80;
$errno = 0;
$errstr = '';
$timeout = 5;
$found = false;
if ( $fs = fsockopen($host, 80, $errno, $errstr, $timeout) )
{
fputs($fs, "GET $file HTTP/1.1\r\n");
fputs($fs, "HOST: $host\r\n");
fputs($fs, "Connection: close\r\n\r\n");
if ( strpos(fgets($fs, 16), '200') !== false )
{
$found = true;
}
fclose($fs);
}
else
{
if ( @get_meta_tags('http://' . $host . $file) )
{
$found = true;
}
}
if ( $found )
{
echo('Die Seite ist erreichbar!');
}
else
{
echo('Die Seite ist NICHT erreichbar!');
}
Irgendwelche Einwände?

Verfasst: 17.06.2007 13:09
von mgutt
So ich habe jetzt in Erfahrung gebracht, dass allow_url_fopen bei funpic auf off steht und damit auch nicht get_meta_tags funktioniert.
Fehlermeldung:
Warning: get_meta_tags() [function.get-meta-tags]: URL file-access is disabled in the server configuration in
Ich denke mal, wenn Safe Mode und allow_url_fopen beide auf ON stehen, dann habe ich wohl keine Funktion mehr zur Verfügung, die eine Anfrage an eine externe Quelle stellen kann.
Ich hatte als Alternative über eine hidden form nachgedacht, aber das Problem ist, dass die Anfrage per POST an eine URL geht und dass automatisiert. Soll heißen es gibt keinen echten Besucher, der die Anfrage auslöst und demnach habe ich auch kein Javascript zur Verfügung.