[PHP] FTP server online / offline script

Pagina: 1
Acties:
  • 149 views sinds 30-01-2008
  • Reageer

Onderwerpen


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
ik heb me al et apezuur gezocht maar kom er niet uit..
ik heb een scriptje gevonden waarmee je kunt checken of een server online of offline is.

PHP:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
<?php
//Web Server Status v 1.2, Copyright 2002 By Ryan Schwiebert, visit http://www.schwebdesigns.com/
//This script may be freely distributed providing all copyright headers are kept intact. 

//Concept from:
//Abax Server Status v1.04, Copyright 2002 By Nathan Dickman, visit http://www.NathanDickman.com/
//Location of the live or dead server images

//Please change to your server specifications
$live = "http://www.somesite.com/status/live.gif";
$dead = "http://www.somesite.com/status/dead.gif";

//The status checking script
//meddle at your own risk!
//check for port number, default is 80
list($addr,$port)= explode (':',"$link");
if (empty($port)){
    $port = 80;
    }
//Test the server connection
$churl = @fsockopen(server($addr), $port, $errno, $errstr, 20);
             if (!$churl){
                header("Location: $dead");
                }
             else {
                  header("Location: $live");             
          }
function server($addr){
         if(strstr($addr,"/")){$addr = substr($addr, 0, strpos($addr, "/"));}
         return $addr;
}
?>


als je het opvraagt als " status.php?link=1.2.3.4:21 " werkt het prima maar zo gauw als ik mijn FTP server op een andere port zet en die status probeer op te vragen krijg ik een offline icon

voorbeeldje

Afbeeldingslocatie: http://www.gelfxp.net/status.php?link=ftp.asus.com.tw:21 <- status.php?link=ftp.asus.com.tw:21

Afbeeldingslocatie: http://www.gelfxp.net/status.php?link=217.120.252.165:1337 <- status.php?link=217.120.252.165:1337

de bovenste werkt wel en de onderste niet terwijl mijn ftp toch echt op port 1337 draait....

[ Voor 5% gewijzigd door Verwijderd op 13-03-2003 21:21 ]


Acties:
  • 0 Henk 'm!

  • thomaske
  • Registratie: Juni 2000
  • Laatst online: 17-09 07:55

thomaske

» » » » » »

Haal eerst alle apenstaartjes ('@') eens weg, zet
error_reporting(E_ALL)

bovenaan je script, en gebruik de $variabelen $errno, $errstr om te kijken wat de foutmelding is..

Brusselmans: "Continuïteit bestaat niet, tenzij in zinloze vorm. Iets wat continu is, is obsessief, dus ziekelijk, dus oninteressant, dus zinloos."


Acties:
  • 0 Henk 'm!

  • gorgi_19
  • Registratie: Mei 2002
  • Laatst online: 08:24

gorgi_19

Kruimeltjes zijn weer op :9

* gorgi_19 vraagt zich af of het uberhaupt wel aan het scriptje ligt, aangezien ik sowieso niet op het adres kom...

Het kan dus best zijn dat je script heel goed werkt, maar je server niet te benaderen is. :)

[ Voor 32% gewijzigd door gorgi_19 op 13-03-2003 21:27 ]

Digitaal onderwijsmateriaal, leermateriaal voor hbo


Acties:
  • 0 Henk 'm!

  • thomaske
  • Registratie: Juni 2000
  • Laatst online: 17-09 07:55

thomaske

» » » » » »

gorgi_19 schreef op 13 March 2003 @ 21:26:
* gorgi_19 vraagt zich af of het uberhaupt wel aan het scriptje ligt, aangezien ik sowieso niet op het adres kom...

Het kan dus best zijn dat je script heel goed werkt, maar je server niet te benaderen is. :)
Hmm hier wel..

code:
1
2
3
4
5
root@margot~# telnet 217.120.252.165 1337 
Trying 217.120.252.165...
Connected to 217.120.252.165.
Escape character is '^]'.
220 Serv-U FTP Server v4.1 for WinSock ready...

Brusselmans: "Continuïteit bestaat niet, tenzij in zinloze vorm. Iets wat continu is, is obsessief, dus ziekelijk, dus oninteressant, dus zinloos."


Acties:
  • 0 Henk 'm!

  • Spider.007
  • Registratie: December 2000
  • Niet online

Spider.007

* Tetragrammaton

sommige schrijf je met dubbel m ;) Maar ik kan conformeren dat je FTP inderdaad draait :Y)

---
Prozium - The great nepenthe. Opiate of our masses. Glue of our great society. Salve and salvation, it has delivered us from pathos, from sorrow, the deepest chasms of melancholy and hate


Acties:
  • 0 Henk 'm!

  • gorgi_19
  • Registratie: Mei 2002
  • Laatst online: 08:24

gorgi_19

Kruimeltjes zijn weer op :9

|:( Http != FTP gorgi.. Eerst nadenken voordat je wat zegt....

Digitaal onderwijsmateriaal, leermateriaal voor hbo


Acties:
  • 0 Henk 'm!

  • thomaske
  • Registratie: Juni 2000
  • Laatst online: 17-09 07:55

thomaske

» » » » » »

Als ik het script zelf lokaal draai, met jouw servernaam en poort, krijg ik een mooi groen blokje, dus je script is ook in orde :)

Brusselmans: "Continuïteit bestaat niet, tenzij in zinloze vorm. Iets wat continu is, is obsessief, dus ziekelijk, dus oninteressant, dus zinloos."


Acties:
  • 0 Henk 'm!

  • Glimi
  • Registratie: Augustus 2000
  • Niet online

Glimi

Designer Drugs

(overleden)
Ah, hier bereikbaar hoor : ServeU draait dus :)

Maar ga eerst eens zelf debuggen doe eens wat thomaske zegt en echo je variabelen eerst voordat je ze gebruikt in de fopen. Dan weet je precies waar het aan ligt en zou je het hopelijk kunnen oplossen.
Als dat allemaal niet werkt, dan kun je hier in dit topic de foutmelding plaatsen, nadat je er natuurlijk eerst zelf naar gegoogled hebt en/of op php.net hebt gestruined

Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
thomaske schreef op 13 March 2003 @ 21:23:
Haal eerst alle apenstaartjes ('@') eens weg, zet
error_reporting(E_ALL)

bovenaan je script, en gebruik de $variabelen $errno, $errstr om te kijken wat de foutmelding is..
ik heb de enige @ die erin staat eruit gehaald en het script hier geupload

http://www.gelfxp.net/test/status.php?link=

hoe kan ik nu de fout meldingen zien?

door

http://www.gelfxp.net/test/status.php?link=errno
http://www.gelfxp.net/test/status.php?link=errstr

?

en jah ik ben een vette n00b :'(

[ Voor 5% gewijzigd door Verwijderd op 13-03-2003 21:34 ]


Acties:
  • 0 Henk 'm!

  • Spider.007
  • Registratie: December 2000
  • Niet online

Spider.007

* Tetragrammaton

ik heb hem iets aangepast en hij doet het goed bij mij?

PHP:
1
2
3
4
5
6
7
8
9
10
11
<?php

list($addr,$port)= explode (':', $_GET["link"]);

if (empty($port)) $port = 80;

$churl = @fsockopen($addr, $port, $errno, $errstr, 20);

if (!$churl) echo "DEAD";
else echo "LIVE";
?>


http://www.spider007.net/...link=217.120.252.165:1337

---
Prozium - The great nepenthe. Opiate of our masses. Glue of our great society. Salve and salvation, it has delivered us from pathos, from sorrow, the deepest chasms of melancholy and hate


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
dan ligt het op de een of andere manier dus aan mijn host..
http://www.gelsmurf.nl/status.php?link=217.120.252.165:1337
zelfde provider maar nu met jou scriptje..
tijd om me provider te emailen :)
thnx all !!

iemand trouwens enig idee waarom het niet ondersteunt wordt?
aangezien port 21 het wel doet...

[ Voor 80% gewijzigd door Verwijderd op 13-03-2003 21:54 ]


Acties:
  • 0 Henk 'm!

  • Orphix
  • Registratie: Februari 2000
  • Niet online
Het is heel goed mogelijk dat je provider een firewall heeft opgezet die packets naar poort 1337 blokt.
Probeer je eigen ftp server eens op poort 21 te draaien zou ik zeggen.

Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Orphix schreef op 13 maart 2003 @ 22:01:
Het is heel goed mogelijk dat je provider een firewall heeft opgezet die packets naar poort 1337 blokt.
Probeer je eigen ftp server eens op poort 21 te draaien zou ik zeggen.
dan doet het scriptje het prima en met port 80 ook maar iedere andere poort werkt niet..

en het gaat niet alleen om mijn server anders ging ik die wel op port 21 :P

[ Voor 1% gewijzigd door Verwijderd op 16-03-2003 11:32 . Reden: het lag dus aan me provider.. heb em op een andere server gezet en hetwerkt prima :D ]

Pagina: 1