Article View: es.comp.os.linux.programacion
Article #6581Re: script para automatizar envio de informacion a una web
From: Iván Sánchez Ortega
Date: Fri, 06 Jun 2003 14:29
Date: Fri, 06 Jun 2003 14:29
102 lines
4938 bytes
4938 bytes
Carlos Mario Mora (c4y0) wrote:
> De manera manual yo haria esto: cada que arranque mi debian, me fijo que
> ip tengo, coloco dicha ip en el index.htm para actualizar el famoso link,
> y por ultimo actualizo mygueb.org.
>
> Puede hacerse esto de manera automatica? o sea que debian solito capture
> la info de mi IP, la incluya en el link en cuestion del index.htm, se
> conecte por ftp a mygueb.org y actualize??????
Ser�a algo m�s o menos as� en el lado del ordenador con IP variable (ojo, lo
he hecho en cinco minutos y no puedo garantizar que funcione bien):
<?
$interfaz="ppp0";
// Ejecuto ifconfig para saber mi IP
$resultado = shell_exec("ifconfig $interfaz");
// Parseo el resultado
$resultado1 = explode("addr:",$resultado);
$resultado = $resultado1[1]; // Me quedo con la parte de despu�s de "addr:
$resultado1 = explode(" ",$resultado);
$mi_ip= $resultado1[0]; // Me quedo con la parte de antes del primer
espacio
// Y se lo digo al servidor
$f=fopen("http://www.miservidor.com/notificacion_online.php?ip=$mi_ip","r");
fclose($f);
?>
Pones todo eso en un .php y lo ejecutas al arrancar (script en /etc/init.d,
linkado a /etc/rc2.d si tu runlevel por defecto es 2)
Por otro lado, el servidor es quien deber�a generar el index.htm por su
cuenta. Una manera muy, MUY cutre de hacerlo ser�a m�s o menos as�: pones
en /var/www/notificacion_online.php lo siguiente:
<?
// Abro index.html para escritura
$f = fopen("index.html","w");
fwrite ($fm,"<html><head> ........
.......
.......
.......
.......
<a href=http://$mi_ip/index.html>Mi otro ordenador</a>
.......
.......
.......
.......
");
fclose($f);
?>
> En caso de que todo esto sea posible, que tan viable es hacer que
> mygueb.org tambien tenga su programita para revizar las
> actualizaciones????
Esa es precisamente la idea, el servidor RECIBE notificaciones cuando los
ordenadores con IP variable. El c�mo hacer que todo esto funcione para
muchos ordenadores requiere algo m�s de destreza y planificaci�n
(organizarl las IPs y ordenadores en una BDD, llevar control de la
actualizaci�n, temas de seguridad, etc etc)
> Para este caso la idea seria algo asi como: un programita o un script o
> lo que sea que se ejecute ininterrupidamente en el servidor.
Mejor con un cron, cada hora o cada diez minutos o algo as�.
> Este
> "demonio" haria lo siguiente: hace un ping a la direccion que aparezca en
> el citado link (osease, a mi maquina). Si dicho ping obtiene respuesta,
> pues no hace nada mas, pero si el ping no recibe respuesta alguna de mi
> maquina, nuestro demonio cambiara el link para rediririlo a una pagina
> predise�ada.
> (la idea es que si mi maquina no esta en internet, no se quede buscandola,
> sino que monte una paginita sencilla ya hecha que dira "En este momento la
> maquina de c4y0 no esta en servicio, pero puedes consultarnos aqui". y
> mostraria las paginas que tengo alla en el servidor de mygueb.org).
Claro que es posible. Pero necesitas algo m�s de complejidad ah�. Te
recomendar�a hacer la p�gina donde aparezzca el link din�mica (incluso
convertir ese linke n un m�dulo propio), para ahorrarte duplicar c�digo por
todos sitios. Y ya te digo, el control de ese m�dulo requiere algo de
planificaci�n.
--
----------------------------------
Iv�n S�nchez Ortega -ivansanchez-arroba-escomposlinux-punto-org
Un ordenador no es un televisor ni un microondas, es una herramienta
compleja.
Technical Details
Message-ID:
<20030606142959.597BF751.NOFFLE@BlackSpark.local>Path:
arc1-ca.pugleaf.net!archiver1.google.com!news1.google.com!sn-xit-02!sn-xit-06!sn-xit-09!supernews.com!newshosting.com!news-xfer1.atl.newshosting.com!diablo.voicenet.com!newsfeed.hal-mli.net!feeder1.hal-mli.net!antonio.escomposlinux.org!cernicalo.escomposlinux.org!tramontana.escomposlinux.org!pinsa.escomposlinux.org!not-for-mailReferences:
<Xns939258459D37Ecayoworldemailorg@130.133.1.4>Show Full Headers
Complete Article Headers
X-Google-Language: SPANISH,ASCII X-Google-Thread: f86c8,d278ded5a0b1c584 X-Google-Attributes: gidf86c8,public X-Google-ArrivalTime: 2003-06-06 07:33:01 PST Path: arc1-ca.pugleaf.net!archiver1.google.com!news1.google.com!sn-xit-02!sn-xit-06!sn-xit-09!supernews.com!newshosting.com!news-xfer1.atl.newshosting.com!diablo.voicenet.com!newsfeed.hal-mli.net!feeder1.hal-mli.net!antonio.escomposlinux.org!cernicalo.escomposlinux.org!tramontana.escomposlinux.org!pinsa.escomposlinux.org!not-for-mail From: Iván Sánchez Ortega <ivansanchez-@rroba-escomposlinux-.punto.-org> Newsgroups: es.comp.os.linux.programacion Subject: Re: script para automatizar envio de informacion a una web Date: Fri, 06 Jun 2003 16:29:59 +0200 Organization: acm.asoc.fi.upm.es Lines: 102 Message-ID: <20030606142959.597BF751.NOFFLE@BlackSpark.local> References: <Xns939258459D37Ecayoworldemailorg@130.133.1.4> Reply-To: Iván Sánchez Ortega <ivansanchez-@rroba-escomposlinux-.punto.-org> NNTP-Posting-Host: 62-37-146-248.dialup.uni2.es Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8Bit X-Trace: pinsa.escomposlinux.org 1054909976 18398 62.37.146.248 (6 Jun 2003 14:32:56 GMT) X-Complaints-To: newsmaster@pinsa.escomposlinux.org NNTP-Posting-Date: Fri, 6 Jun 2003 14:32:56 +0000 (UTC) User-Agent: KNode/0.7.2