Jump to content
  • 0

ostatní Zistiť či server beží


ZaKlaus

Dotaz

Zdravím,

 

Skúšam všetko možné, ale nejde mi to. Chcel by som cez PHP zistiť, či moje ďalšie 2 servery bežia. Potom sa to zobrazí formou Online/Offline

 

Problém je v PHP kóde, totiž netuším ako to zistiť.

 

Toto je kód, čo som skúšal z Internetu:

 

<?
$stav = array(
"http://vs01.zaklaus.eu/running.txt",
"http://vs00.zaklaus.eu/running.txt:8080"
);
if(include('$stav[0]'))
$stav[0]="<span style='color: green;'>Online</span>";
else
$stav[0]="<span style='color: red;'>Offline</span>";
if(file_get_contents('$stav[1]'))
$stav[1]="<span style='color: green;'>Online</span>";
else
$stav[1]="<span style='color: red;'>Offline</span>";

?>

 

V každom prípade ani jedna z variánt nefunguje.

 

Dopredu sa ospravedlňujem za neznalosť PHP v tomto obore.

 

Za odpoveď vopred ďakujem,

ZaKlaus.

Link to comment
Share on other sites

8 odpovědí na tuto otázku

Recommended Posts

  • 0

Lenže to potrebujem. Pipni mam len jeden, ostatne si platim

 

nejaký spôsob určite existuje :)

vs ako-také je hosťované VPS

vs01 je pipni server

vs00 môj vlastný stroj

 

to čo je v php kóde je len príklad. Ja hľadám reálny spôsob zobrazenia stavu servera ;)

 

Tak z toho asi nič. :)

 

Tak som na to nakoniec prišiel

 

if(file_get_contents($stav[0])!="FALSE")
//Online
else
//Offline

 

Príkaz je blokový, môže spomaliť web.

Link to comment
Share on other sites

  • 0

Ten druhý ti nefunguje:

http://vs00.zaklaus.eu/

 

No ty stejně on/off serveru bereš podle httpd. Co takhle asi nejjednodušší způsob. Prachobyčejné HTML. :d

 

<span>Server je</span>: <img src="http://vs01.zaklaus.eu/online.png" alt="Offline" />

 

Pokud bude online zobrazí obrázek s rastrovaným textem "Online"

Pokud bude offline obrázek se nenačte a zobrazí se alternativní popis "Offline"

 

Celkem humpolácké, ale funkční řešení.

Link to comment
Share on other sites

  • 0

vy to všichni berete za předpokladu že běží http server nebo apache server

ale lze co zkusit odezvu serveru neboli ping bez ohledu jestly běží webový server nebo ne

určitě něco na google najdeš jak by si toho pomocí odezvy serevru mohl docílit

zase to je php

 

edit://

funkční jsem našel s použitím exec

<?php
function GetPing($ip=NULL) {
if(empty($ip)) {$ip = $_SERVER['REMOTE_ADDR'];}
if(getenv("OS")=="Windows_NT") {
 $exec = exec("ping -n 3 -l 64 ".$ip);
 return end(explode(" ", $exec ));
}
else {
 $exec = exec("ping -c 3 -s 64 -t 64 ".$ip);
 $array = explode("/", end(explode("=", $exec )) );
 return ceil($array[1]);
}
}
echo GetPing("google.cz");

vrátí ti to kolik milisekund je odezva

takže místo echo to dáš do podmínky

if(GetPing("google.cz") > 0) echo "server online";
else if(GetPing("google.cz") == 0) echo "server offline";

tot je bez ohledu na běžící či neběžící webový server možna to může malinko zpomalit načítání ale funguje to

Link to comment
Share on other sites

  • 0

No ona je otázka jestli mu jde o to jestli běží http démon nebo jestli běží VPS. Z toho o co se snažil jsem vydedukoval, že mu jde právě o tu http službu.

Link to comment
Share on other sites

  • 0

ale podle názvu

 

 Zistiť či server beží[/b]

bych řekl že chce pomocí php zjistit jestly běží server takže asi celý server takže vps

 

no uvidíme názor autora příspěvku

a když bude http server přetížen tak mu to bude neskutečně dlouho načitat

když bude zas přetížené vps tak u ping asi taky pokud nebude kratky timeout

Link to comment
Share on other sites

  • 0

V podstate máte obidvaja pravdu, servery bežia vždy so zapnutým apache2, ale zisťovať stav podľa dispozície webového servera nieje optimálne riešenie. Pôvodne som chcel teda ping, no treba mi niečo s rýclym načítaním stránky (ping blokuje).

 

Skúsim obe možnosti, tak teda ďakujem za pomoc.

Potom napíšem ako to dopadlo.

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...