🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: es.comp.os.linux.programacion
Article #6584

Re: script para automatizar envio de informacion a una web

#6584
From: Reinoso G.
Date: Fri, 06 Jun 2003 14:46
114 lines
6894 bytes
 El otro d�a, Carlos Mario Mora (c4y0) nos estuvo contando:
> Buenas las tengan =)

Para darte una buena noticia te dir� que lo que pretendes es posible y no 
precisamente dif�cil.

> 
> 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??????

S�, de varias formas. Empieza por capturar tu ip, sabes que con el 
comando ifconfig la puedes ver, pues or ejemplo se me ocurre usar:
ifconfig | grep -A 1 ppp0 | grep inet | cut -d: -f2 | cut -d' ' -f1

claro que hay formas mejores. Aqu� lo que hago es llamar a ifconfig, el 
primer grep se queda con la l�nea donde pone la inrterface (ppp0) y la ip 
correspondiente, el siguiente grep s�lo deja pasar la l�nea con la ip. con 
el primer cut suprimo lo que hay antes de los dos puntos y con el 
siguiente lo que hay tras los espacios. S�lo obtenemos la ip.

Con awk es m�s corto pero mas complicado de entender para mi que no s� 
awk. O con sed.

Sustituimos la ip en el script: la forma m�s sencilla que se me ocurre es 
que tengas un index.bak. Con la direcci�n que quieras cambiar escrita de 
forma f�cilmente identificable. Por ejemplo:
...
<a href=http://IPIPIP/blabbla...>
...

as� te ser� f�cil usar sed:
supongamos que tenemos una l�nea en el script que dice:
ip=`ifconfig | grep -A 1 ppp0 | grep inet | cut -d: -f2 | cut -d' ' -f1`
(ojo a las comillas invertidas)

Y ahora otra en la que usamos sed:
cat index.html.bak | sed -e s/IPIPIP/$ip/g > index.html
eso sustitulle todas las ocurrencias de IPIPIP por la IP verdadera y 
escribe el index.html reemplazando el que hubiera.

Para actualizar la web tienes tambi�n muchas opciones. Pero usar�a 
sitecopy. Es un programita que detecta los cambios y los sube al servidor 
correspondiente. As� no s�lo te servir� para subir el �ndice sino que 
tambi�n sincronizar� todos los dem�s archivos cambiados. Una vez que lo 
tengas configurado (es sencillo) no hay m�s que poner:

sitecopy sitoweb

Y ya est�. Actualizado.

�Ves como no es dif�cil? Para que esto se ejecute al arrancar no tiene m�s 
que a�adirlo a los scripts de inicio. Pero ser� mejor que uses "su", 
porque esos scripts se ejecutan como root.

> 
> En caso de que todo esto sea posible, que tan viable es hacer que 
> mygueb.org tambien tenga su programita para revizar las actualizaciones????
> 
> 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.  Este "demonio" 

�Alto! �qu� opinar� el sysop de tener un programa tuyo rodando 
continuamente? Eso no se puede hacer, y si se pudiera no ser�a 
recomendable. Pero existe una alternativa razonable: haz la comprobaci�n 
cada vez que alguien visite la p�gina. Y eso s� se puede hacer y tampoco 
es complicado.

Para ello si el servidor lo permite lo sencillo ser�a usar PHP. Incorporas 
un script PHP al index.html que compruebe si puede acceder a la p�gina, y 
si puede la muestre. Si no puede lo ideal ser�a que reemplazase el 
index.html del servidor por uno predeterminado hasta que vuelvas a arancar 
tu sistema que subas el index.html adecuado.

> 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 

No vale el ping. Porque puede que tu ip est� asignada a otra m�quina 
(deduzco que no es fija). As� que la otra m�quina puede contestar. Mejor 
que pida una cierta p�gina a tu m�quina. Quiz� la que pidiese el 
visitante, si no se puede obtener dar� el aviso, y se reemplaza a s� mismo 
por el predeterminado. Si la puede obtener la muestra y sale.

Aunque ser�a m�s sencillo programar un script especial de forma que al 
acceder a la p�gina de control, por ejemplo:
http://servidor.com/yo/control?que=apagoelpc
tomara las medidas oportunas y acceder a �l antes de acabar el ppp.
Esto s�lo valdr�a para cuando apagaras voluntariamente, no valdr�a si se 
corta la conexi�n o la luz.

> 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).

El c�mo hacerlo no lo recuerdo exactamente. Pero puedes mirar el manual de
php en php.org o php.net (una de las dos). Seguro que entre todas sus
funciones algunas te valen.

> Gracias por sus aportes, sugerencias, etc.

Una sugerencia: �no te valdr�a usar servicios como dnsalias? �Y buscar un 
servidor con m�s espacio aunque sea con publicidad?


Saludos.

-- 
�������������������������������������������������������������������������
��  Reinoso G.  EA4BAO                      r einoso.bao@wanadoo.e s   ��
��  http://perso.wanadoo.es/reinoso.bao                                ��
������������������������������������������������������������������������� 
Technical Details
Message-ID: <slrnbe1a9c.pv.reinoso@EA4BAO.PLLANO.ESP.EU>
Path: arc1-ca.pugleaf.net!archiver1.google.com!news1.google.com!newsfeed.stanford.edu!logbridge.uoregon.edu!news.stealth.net news.stealth.net!news.stealth.net!in.100proofnews.com!in.100proofnews.com!cox.net!news-xfer.cox.net!mainake.escomposlinux.org!reboot.escomposlinux.org!news-7.escomposlinux.org!news
References: <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 08:17:25 PST
Path: arc1-ca.pugleaf.net!archiver1.google.com!news1.google.com!newsfeed.stanford.edu!logbridge.uoregon.edu!news.stealth.net news.stealth.net!news.stealth.net!in.100proofnews.com!in.100proofnews.com!cox.net!news-xfer.cox.net!mainake.escomposlinux.org!reboot.escomposlinux.org!news-7.escomposlinux.org!news
From: "Reinoso G." <reinoso@probando.com>
Newsgroups: es.comp.os.linux.programacion
Subject: Re: script para automatizar envio de informacion a una web
Date: Fri, 6 Jun 2003 16:46:05 +0200
Organization: ecolnet
Lines: 114
Message-ID: <slrnbe1a9c.pv.reinoso@EA4BAO.PLLANO.ESP.EU>
References: <Xns939258459D37Ecayoworldemailorg@130.133.1.4>
Reply-To: rei noso.bao@wanadoo.e s
NNTP-Posting-Host: 62-37-21-151.dialup.uni2.es
Mime-Version: 1.0
Content-Type: text/plain; charset=iso-8859-1
Content-Transfer-Encoding: 8bit
X-Trace: tro.champinet.es 1054912640 15637 62.37.21.151 (6 Jun 2003 15:17:20 GMT)
X-Complaints-To: reboot@escomposlinux.org
NNTP-Posting-Date: Fri, 6 Jun 2003 15:17:20 +0000 (UTC)
User-Agent: slrn/0.9.7.4 (Linux)