Serverstatus abfragen
Serverstatus abfragen
Hallo liebe Gemeinde
Ich bin heute auf folgende Seite gestossen
http://www.step2internet.de/df-servercheck/index.php
Nun zu meiner Frage.
Wo finde ich ein solches Script. bzw. Wie kann ich so etwas realiesieren. Ich habe schon mehrere Sachen gesucht und bin dabei auf Ping-IT und ähnliches gestossen was aber nach einigen Tests nicht funktioniert hat. Da man die IP eingeben muss und das Ergebniss dann in einer neuen Seite angezeigt wird.
Ich bin heute auf folgende Seite gestossen
http://www.step2internet.de/df-servercheck/index.php
Nun zu meiner Frage.
Wo finde ich ein solches Script. bzw. Wie kann ich so etwas realiesieren. Ich habe schon mehrere Sachen gesucht und bin dabei auf Ping-IT und ähnliches gestossen was aber nach einigen Tests nicht funktioniert hat. Da man die IP eingeben muss und das Ergebniss dann in einer neuen Seite angezeigt wird.
-
- Userprojekt
- Posts: 7066
- Joined: 2002-10-09 14:30
- Location: Dorsten
- Contact:
Re: Serverstatus abfragen
Viel schöner für diesen Zweck : http://people.ee.ethz.ch/~oetiker/webtools/smokeping/
DebianHowTo
echo "[q]sa[ln0=aln256%Pln256/snlbx]sb729901041524823122snlbxq"|dc
echo "[q]sa[ln0=aln256%Pln256/snlbx]sb729901041524823122snlbxq"|dc
Re: Serverstatus abfragen
Nein ich wollte ja gerade keine grafische Auswertung sondern nur den Ping und den damit verbundenen Status online oder nicht.
-
- Userprojekt
- Posts: 7066
- Joined: 2002-10-09 14:30
- Location: Dorsten
- Contact:
Re: Serverstatus abfragen
DebianHowTo
echo "[q]sa[ln0=aln256%Pln256/snlbx]sb729901041524823122snlbxq"|dc
echo "[q]sa[ln0=aln256%Pln256/snlbx]sb729901041524823122snlbxq"|dc
Re: Serverstatus abfragen
Na so ein "ping-test" kannst du unter Perl relativ einfach mit einer Lib aus dem CPAN hinbekommen. Möchtest du auch überprüfen, ob die anderen Dienste laufen, oder sind dir nur die Pings wichtig? Wie soll diese Ã?berprüfung aussehen, soll nur der Prozess von z.B. httpd laufen (was keine Gewährleistung ist, ob der Server tatsächlich erreichbar ist) oder möchtest du reale Funktionstests machen?
EDIT: Oder eben schon eine vorgefertigte Lösung wie CaptainCrunch es empfiehlt. Selbst programmieren dürfte aber auch nicht sehr schwer sein
EDIT: Oder eben schon eine vorgefertigte Lösung wie CaptainCrunch es empfiehlt. Selbst programmieren dürfte aber auch nicht sehr schwer sein
Last edited by tuxyso on 2003-08-21 20:37, edited 1 time in total.
Re: Serverstatus abfragen
Also erst einmal ich bin begeistert über dieses herrliche Forum. :)
Doch nun zu deinem zweiten Link. Das sieht gut aus doch gibt es da nicht was einfacheres weil ich keine Analysen haben will sondern nur solch eine ganz simple Ping Status Anzeige.
Doch nun zu deinem zweiten Link. Das sieht gut aus doch gibt es da nicht was einfacheres weil ich keine Analysen haben will sondern nur solch eine ganz simple Ping Status Anzeige.
-
- Userprojekt
- Posts: 7066
- Joined: 2002-10-09 14:30
- Location: Dorsten
- Contact:
Re: Serverstatus abfragen
OK, aber warum so "simpel", wenn du es ohne grpÃ?artigen Aufwand auch ganz leicht (im Falle von Nagios) erweiteren könntest ? ;)Das sieht gut aus doch gibt es da nicht was einfacheres weil ich keine Analysen haben will sondern nur solch eine ganz simple Ping Status Anzeige.
Zum Hintergrund : ich monitore mit Nagios auf meiner Arbeit mittlerweile ca. 65 Server auf verschiedenste Dienste, und bin seit jeher begeistert, Gerade wenn's "nur" ein einfacher ping sein soll, kannst du's kaum einfacher haben.
DebianHowTo
echo "[q]sa[ln0=aln256%Pln256/snlbx]sb729901041524823122snlbxq"|dc
echo "[q]sa[ln0=aln256%Pln256/snlbx]sb729901041524823122snlbxq"|dc
Re: Serverstatus abfragen
ich hatte eher an sowas gedacht bloss weiss ich nicht wie ich die Ausgabe hinbekomme.
Code: Select all
<?php
function ping($host)
{
$ip = gethostbyname($host);
$ping = `ping -c 1 -q $ip`;
$res = '1 packets transmitted, 1 packets recieved';
if(strpos($ping, $res))
return true;
else
return false;
}
?>
Re: Serverstatus abfragen
so das habe ich noch gefunden aber funktioniert nicht. Weiss einer warum?
Code: Select all
<?php
$ip="DIE_IP";
$online=exec("ping $ip -n 1"); // Parameter -c für UNIX system, -n glaub ich für Win
$ausgabe=explode(",",$online);
$ausgabe=str_replace("Minimum = ","",$ausgabe[0]);
$ausgabe=str_replace("ms","",$ausgabe);
echo $ausgabe;
?>
Re: Serverstatus abfragen
Darauf hin bekomme ich diese Meldung
Warning: Cannot execute using backquotes in safe mode in /home/www/web1/html/ping.php on line 3
Warning: Cannot execute using backquotes in safe mode in /home/www/web1/html/ping.php on line 3
Code: Select all
<?php
$ip="66.135.192.85";
$online=shell_exec("ping $ip -c 1"); // Parameter -c für UNIX system, -n glaub ich für Win
$ausgabe=explode(",",$online);
$ausgabe=str_replace("Minimum = ","",$ausgabe[0]);
$ausgabe=str_replace("ms","",$ausgabe);
echo $ausgabe;
?>
Re: Serverstatus abfragen
hmm, unter safe-mod läuft dieser befehl nicht... hmm
moment!
editiere ich dann hier herein!
wenn das auch nichts nützt.... dann weiss ich auch nicht mehr weiter...
obwohl evt. doch... :)
moment!
editiere ich dann hier herein!
Code: Select all
<?php
$ip="66.135.192.85";
$openresource=fopen("ping $ip -c 1", 'r');
while(!feof($openresource))
{
$ausgabe = $ausgabe . fread(($openresource, 1024);
}
$ausgabe=explode(",",$online);
$ausgabe=str_replace("Minimum = ","",$ausgabe[0]);
$ausgabe=str_replace("ms","",$ausgabe);
echo $ausgabe;
?>
obwohl evt. doch... :)
Re: Serverstatus abfragen
jetzt erhalte ich folgende Fehlermeldung
Parse error: parse error, unexpected ',' in /home/www/web1/html/ping.php on line 6
Parse error: parse error, unexpected ',' in /home/www/web1/html/ping.php on line 6
Re: Serverstatus abfragen
Wenn du das nicht unbedingt mit Php machen willst, kannst du das CPAN Modul Net::Ping benutzen und dir eine Lösung in Perl programmieren. Du kannst bei diesem Modul aber nicht die Ping Zeiten auslesen, wenn es dir aber nur um eine Verfügbarkeit geht, dürfte das egal sein:
P.S.: Timeouts etc. kannst du bei der Erstellung des Ping-Objekts optional mitangeben. Für weitere Details dazu s. http://www.cpan.org
Code: Select all
#!/usr/bin/perl
use Net::Ping;
$host = "puretec.de";
$p = Net::Ping->new();
if($p->ping($host))
{ print "$host ist erreichbar.n" }
else
{ print "Host $host ist nicht erreichbarn" };
$p->close();
Re: Serverstatus abfragen
hmm, ich habe gerade noch mal dein erster Script getestet:
ok, dann versuche es erstmal mit Perl weiter, ich hasbe hier irgendwie nen block momentan....
ok, dann versuche es erstmal mit Perl weiter, ich hasbe hier irgendwie nen block momentan....
Re: Serverstatus abfragen
So ich hab mich mal etwas mehr damit beschäftigt. :-D
Das Script zeigt mir auf alle Fälle schon mal das mein Server online ist Yeahh das ist schon mal gut. Bloss die Ping Anzeige funtioniert immer noch nicht. TimeOut
Folgendermassen sieht das Script nun aus.
Zu testen wie es reagiert auf dieser Seite http://www.sven24.net/index.php
Bin Dankbar für jede Hilfe. :D
Das Script zeigt mir auf alle Fälle schon mal das mein Server online ist Yeahh das ist schon mal gut. Bloss die Ping Anzeige funtioniert immer noch nicht. TimeOut
Folgendermassen sieht das Script nun aus.
Zu testen wie es reagiert auf dieser Seite http://www.sven24.net/index.php
Bin Dankbar für jede Hilfe. :D
Code: Select all
</head>
<?
require("includes/config.inc.php");
?>
<tr>
<?
$ping = exec("ping -c 1 $df_primrouter_name",$result, $error);
preg_match("=([d.]+)/([d.]+)/([d.]+) ms=", $ping, $matches);
If (trim($matches[2])=="")
{
echo "<small>Ping: timeout</small>";
}
else
{
echo "<small>Ping: ".$matches[2]." ms</small>";
}
?>
</td>
</tr>
<tr>
<td class="arielblaulinksfett">
<?
$fp = @fsockopen ("$http_name", $http_port, &$errno, &$errstr, 5);
If (!$fp)
{
echo "<p class="offline">Server offline - $errstr ($errno)</p>";
}
else
{
echo "<p class="online">Server online</p>";
}
fclose($fp);
?>
</td>
</tr>
</table>
</td>
</tr>
</body>
</html>
Re: Serverstatus abfragen
das problem ist, dass exec immer nur die Letzte Zeile der Anwendung aus gibt, also in dem Falle unbrauch bar, ich wüsste aber nun auch keine Lösung mehr, zumindestens, wo man nicht mal ebend nen paar Befehle geben kann.
Dein größtes übel ist, dass du php da im Safe-Mod laufen hast.
Kannste Safe-mod nicht für diesen vHost abschalten, und den "ping"-command in dein DocumentRoot packen, und dann mit dem
Dein größtes übel ist, dass du php da im Safe-Mod laufen hast.
Kannste Safe-mod nicht für diesen vHost abschalten, und den "ping"-command in dein DocumentRoot packen, und dann mit dem
Code: Select all
php_admin_value open_basedir "/zum/doc-root" eingrenzen, wo die PHP dieses VHost herum fummeln dürfen?
Mfg
Krispin
Re: Serverstatus abfragen
Also das mit dem exec verstehe ich nicht ganz denn das letzte Script ist das was bei step2internet.de auch läuft.
http://www.step2internet.de/df-servercheck/index.php
Wenn du willst kann ich dir das komplette Script ja mal schicken.
http://www.step2internet.de/df-servercheck/index.php
Wenn du willst kann ich dir das komplette Script ja mal schicken.
Re: Serverstatus abfragen
So dann wollen wir dieses Thema hier mal abschliessen. :-D
:arrow: Danke für die Unterstützung von krispin und der Firma www.step2internet.de (dies ist keine Werbung) die mir freundlicherweise das Script zur Verfügung gestellt hat.
Nun funktioniert meine Ping anzeige tadellos.
:arrow: Das Problem lag am SafeMode von PHP.
Lasst Euch nicht täuschen wenn in der httpd.conf der Safe Mode abgestellt ist. Ã?berprüft das bitte immer mit der phpinfo.php ob er auch wirklich aus ist. In meinem Fall hat das liebe Confixx in der /etc/httpd/confixx_vhosts.conf den Safe Mode aktiviert gehabt. Somit ging jegliche Ping Ausgabe nicht.
Ich danke allen nochmals die mich hier tatenkräftig unterstützt haben.
Mfg Rod :)
:arrow: Danke für die Unterstützung von krispin und der Firma www.step2internet.de (dies ist keine Werbung) die mir freundlicherweise das Script zur Verfügung gestellt hat.
Nun funktioniert meine Ping anzeige tadellos.
:arrow: Das Problem lag am SafeMode von PHP.
Lasst Euch nicht täuschen wenn in der httpd.conf der Safe Mode abgestellt ist. Ã?berprüft das bitte immer mit der phpinfo.php ob er auch wirklich aus ist. In meinem Fall hat das liebe Confixx in der /etc/httpd/confixx_vhosts.conf den Safe Mode aktiviert gehabt. Somit ging jegliche Ping Ausgabe nicht.
Ich danke allen nochmals die mich hier tatenkräftig unterstützt haben.
Mfg Rod :)