Zadejte hledaný výraz...

checker, Woko, php script Http/1.1 404 Not Found Http/1.1 200 OK Http/1.1 302 Moved

One
verified
rating uzivatele
16. 8. 2011 09:28:22
Ahoj,
potrebuju checkovat existenci par adres
http://www.server.com/directory/firmware234.bin
- pokud neni jeste, tak standardne vrati HTTP/1.1 404 Not Found pripadne HTTP/1.1 302 Moved Temporarily
a potrebuji, aby mi to po navratu HTTP/1.1 200 OK (tj. az soubor bude existovat) poslalo maila ...
Zkousel jsem to pres woko . cz a nefunguje to (protoze objekt neexistuje)
Mam moznost PHP5 a Crona...
Ale radeji bych nejakou online sluzbu jako woko apod.
Napady? jestli o necem nahodou nevite. Nebo mozna lepe nejaky ten skript... URI na ktere cekam, napr zde: firmware234.bin - zadam vzdy manualne do PHP.
16. 8. 2011 09:28:22
https://webtrh.cz/diskuse/checker-woko-php-script-http-1-1-404-not-found-http-1-1-200-ok-http-1-1-302-moved/#reply667178
tomik1313
verified
rating uzivatele
(2 hodnocení)
16. 8. 2011 12:41:55
nepochopil som sice asi presne co potrebujes, ale skusim hadat: ak chces kontrolovat statusy hlaviciek niektorych domen, tak v php vyuzi funkciu get_headers (priklad vid nizsie). Takze v jednom skripte len nacitas domeny, ktore ta zaujimaju a cez foreach vyuzijes funkciu get_headers :-) vysledok mozes posielat mailom cez hocijaky SMTP server (ak mas vlastny hosting, tak pravdepodobne mas moznost aj posielat maily)
16. 8. 2011 12:41:55
https://webtrh.cz/diskuse/checker-woko-php-script-http-1-1-404-not-found-http-1-1-200-ok-http-1-1-302-moved/#reply667177
One
verified
rating uzivatele
20. 8. 2011 02:27:24
potrebuju, aby az se objevi firmware234.bin na serveru viz nize
http://www.server.com/directory/firmware234.bin
aby mi to poslalo mail... (bohuzel inteligentneji to nejde, vydavatel nic takoveho nenabizi) jedno jestli pres nejaku online sluzbu nebo pres php skript
no jenze nejsem programator tak bych uvital skript hotovy, nebo link na sluzbu podobnou, jako woko
20. 8. 2011 02:27:24
https://webtrh.cz/diskuse/checker-woko-php-script-http-1-1-404-not-found-http-1-1-200-ok-http-1-1-302-moved/#reply667176
Bacon
verified
rating uzivatele
(2 hodnocení)
20. 8. 2011 05:49:38
Dobré ráno,
trošku jsem se nudil a sepsal základ, takhle to vypadá:
// Skript, který sleduje hlavičku webu a v případě, že web vrátí 200, odešle mail
// Konfigurace
// Povolit log?
$log = true;
// Sledované URL
$check = 'http://cokoliv.cz/';
// Mail
// Příjemce
$mail = 'test@test.cz';
// Předmět zprávy
$mail = 'Aktualizace firmware';
// Odřádkování
$mail = "n";
// Tělo zprávy
$mail = 'Dobry den,' . $mail;
$mail .= $mail;
$mail .= 'zda se, ze firmware na adrese ' . $check . ' je nyni dostupny.';
//////////////////////////////////////////////////////////////////////
////// Neměnit
////// Kontrola hlaviček
$check = @get_headers( $check );
// Zapsání do logu
if ( $log == true ) {
// Vytvoření záznamu do logu
$log = date( 'Y-m-d H:i:s' ) . ' ' . $check . ' ' . $check . "n";
// Otevření log souboru
$log = fopen( 'header_log.txt', 'a' );
// Zapsání záznamu
fwrite( $log, $log );
// Zavření log souboru
fclose( $log );
}
////// Kontrolní vypsání do prohlížeče
echo $check;
////// Porovnávání hlaviček
switch ( $check ) {
case 'HTTP/1.1 200 OK':
mail( $mail, $mail, $mail );
break;
case 'HTTP/1.1 302 Moved Temporarily':
break;
case 'HTTP/1.1 404 Not Found':
break;
default:
break;
}
?>
EDIT: Co skript neumí, je uložení informace, zda už byl mail odeslán, takže by to mohlo docela spamovat, pokud tam bude krátký časový limit. Za použití MySQL by se to dalo, ale bylo by to asi zbytečně složité kvůli jednomu webu. Chtěl jsem vyřešit ukládání o takové informaci do souboru, ale nějak jsem nepřišel na efektivní řešení. Pokud by byl zájem, mohl bych to asi přepsat pro více URL za použití XML nebo MySQL. Ale zadarmo už by to asi nebylo :)
Samozřejmě by se dalo vyřešit i posílání při ostatních stavech, je to tam naznačeno v tom switchi. Já jsem script kiddie, PHP moc neovládám, ale toto je celkem jednoduché.
20. 8. 2011 05:49:38
https://webtrh.cz/diskuse/checker-woko-php-script-http-1-1-404-not-found-http-1-1-200-ok-http-1-1-302-moved/#reply667175
One
verified
rating uzivatele
3. 9. 2011 14:50:34
no super, ty jsi aktivní, díky za nápad, mám taky nápad, jak to vyřešit, za předpokladu testu (cronu) 1x denně jednoduše odeslat mail pouze v případě, kdy http návratová hlavička
--
Last-Modified <= (Now()-24hodin)
bohužel nevím jak se počítá s tím textovým formátem typu "Fri, 10 Jun 2011 04:12:09 GMT"
--
dovedl bys to tam dopsat? Já jsem ještě větší kiddie.
Asi 99% statických webů posílá Last-Modified a je to v 90% případů datum uploadu na server přes FTP, takže by to zabralo. Pokud by to na server ládovali třeba Sambou, moh by to být prob., ale tak by se dalo -100 hodin a zaspamovalo by to jen několikráte...
---
a ještě bych odesílal, aby skript nebyl podezřelý, UA:
User-Agent: Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; Trident/5.0)
Případně do mailu doplnil jak
Last-Modified:
Content-Length:
a rovnou link na ten soubor (ten už tam máš)...
A těch více URL (tak cca 4-6 odhaduju, že bych využil) pomocí smyčky, cyklu, prostě by se se to cyklicky projelo :-)
======
Pripadne by skript obsahoval:
$cislo = 51
$check = 'http://cokoliv.cz/firmware/firmware1.1-$cislo';
a pri vysledku OK by se skript po odeslani mailu sam prepsal (jde to? anebo jen pomoci externiho souboru?) a inkrementoval by v sobe cislo na 52 :-)
3. 9. 2011 14:50:34
https://webtrh.cz/diskuse/checker-woko-php-script-http-1-1-404-not-found-http-1-1-200-ok-http-1-1-302-moved/#reply667174
Pro odpověď se přihlašte.
Přihlásit