Reklama

zonerbooks.cz | zoner.cz | czechia.com | regzone.cz | inshop.cz | inmail.cz | zonerpress.cz | zonerantivirus.com | zonerama.cz

interval.cz

Jak z mobilu kontrolovat selhání služeb serveru

16. 03. 2002 | Pavel Růžička | WAP a WML | Komentáře: 0

Pokud provozujete vlastní internetový server, může se vám hodit možnost zjistit pomocí mobilního telefonu, zda některé ze služeb, které server zajišťuje, neselhaly. Jednoduchým pokusem o navázání spojení na portu dané služby určíte, zda je na serveru daná služba k dispozici.

Je dobré si říci, že tímto způsobem zjistíte, že server na daném portu odpovídá. Nezjistíte ale, zda se chová korektně služba -  i tak to ale pro rychlou letmou kontrolu bohatě postačí. Podobnou aplikaci, která využívá zde popisovaný způsob ověření dostupnosti služby na serveru, si můžete vyzkoušet (je nutný prohlížeč wml stránek - Opera, WinWap, mobilní telefon s wapem, nebo emulátor).

Skript obsahuje jednu kartu, do které se v závislosti na nastavení proměnné addr vygeneruje buď formulář pro zadání adresy zjišťovaného serveru, nebo rovnou výsledek. Součástí formuláře je i pole pro možnost zadání vlastní služby - vlastního čísla portu. Skript lze volat i přímo se zadanými parametry adresy serveru a případně i vlastní služby. Adresu serveru je možné zadávat doménou nebo jako IP adresu.

Skript srvstat.php:

<?PHP
function lookup($hport,$comment,$who) {  // pro test navázání spojení se serverem na daném portu
  $fp = fsockopen($who, $hport, &$errno, &$errstr, 4); // pokus se otevřít socket
  if (!$fp) {
    $data = "$comment ($hport): -neodpov&#xED;d&#xE1;"; // nezadařilo se, služba nebo server neodpovídá
  }
  else {
    $data = "$comment ($hport): -aktivn&#xED;"; // služba je aktivní
    fclose($fp);
  }
  return $data;
}
header("Content-type: text/vnd.wap.wml"); // nutná hlavička WML dokumentu
?>
<?xml version="1.0"?>
<!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.1//EN" "http://www.wapforum.org/DTD/wml_1.1.xml">
<wml>
<template>
<do type="prev" label="Zp&#x011B;t"><prev/></do>
<do type="accept" label="Hlavn&#xED;"><go href="index.php"/></do>
</template>
<card id="srvstat" title="ServerStat">
<p>
<?PHP if (empty($addr)) { ?> // není-li zadaná adresa serveru, vygenerovat formulář pro její zadání
Adresa serveru <input type="text" name="addr" title="Adresa"/><br/>  // pole pro adresu serveru
Vlastn&#xED; slu&#x017E;ba <input type="text" name="myport" emptyok="true" title="Vlastn&#xED; port"/><br/> // pole pro volitelné zadání vlastní služby
<anchor>Spustit<go href="srvstat.php" method="get">
<postfield name="myport" value="$(myport)"/>
<postfield name="addr" value="$(addr)"/>
</go></anchor><br/>
<?PHP } else { // je-li zadána adresa serveru, projít postupně seznam služeb - otestovat odezvu serveru na ně
  echo StrToUpper($addr)."<br/><small>\n";
  echo lookup("80","HTTP","$addr")."<br/>\n";
  echo lookup("21","FTP","$addr")."<br/>\n";
  echo lookup("22","SSH","$addr")."<br/>\n";
  echo lookup("443","SSL","$addr")."<br/>\n";
  echo lookup("25","SMTP","$addr")."<br/>\n";
  echo lookup("110","POP3","$addr")."<br/>\n";
  echo lookup("143","IMAP4","$addr")."<br/>\n";
  echo lookup("139","NetBIOS","$addr")."<br/>\n";
  echo lookup("389","LDAP","$addr")."<br/>\n";
  echo lookup("23","Telnet","$addr")."<br/>\n";
  echo lookup("3306","MySQL","$addr")."<br/>\n";
  echo lookup("6667","IRC","$addr")."<br/>\n";
  if (trim($myport)<>"") // je-li zadána vlastní služba, otestovat ji také
    echo lookup($myport,"vlastn&#xED;","$addr")."<br/>\n";
  echo "</small>\n";
}
?>
</p>
</card>
</wml>

Příklad volání skriptu včetně zadání adresy zjišťovaného serveru:

srvsw.php?addr=www.ibm.com&myport=1024
srvsw.php?addr=212.47.7.203

Ve skutečném skriptu je nutné vynechat komentáře (neodpovídají syntaxi WML). Skript si můžete stáhnout (příponu src pak přepište na txt). Část vnořenou v odstavci karty lze vyjmout a po drobných úpravách (zj. formuláře) použít i ve skriptu běžné webové stránky ve formátu HTML.

Starší komentáře ke článku

Pokud máte zájem o starší komentáře k tomuto článku, naleznete je zde.


Další aktuální články na interval.cz

Tematicky související články

Dejte vědět i ostatním o článku

Diskuse (počet komentářů: 0)

Buďte prvním návštěvníkem, který přidá nový komentář.

Přidat nový komentář

Jméno a e-mail jsou nepovinné. Příspěvky obsahující odkaz jsou moderovány.

Zoner AntiVirus Free pro Android
zabezpečte si svůj smartphone, zdarma
Profesionální eshop Zoner inShop od 990 Kč.
Zoner Photo Studio 14 – vyzkoušejte ZDARMA
Reklama
Reklama

Syndikace

hledáme nové autory | redakce interval.cz | reklama na interval.cz

© ZONER software, a.s., všechna práva vyhrazena, interval.cz dodržuje právní předpisy o ochraně osobních údajů. Powered by WordPress.