[Lugge] Re: Un casino enorme da risolvere... (html & prog-execution)

  • From: "Zingus J. Rinkle" <1999s039@xxxxxxxxxxxxxxxxxx>
  • To: lugge@xxxxxxxxxxxxx
  • Date: Tue, 14 Jan 2003 02:46:27 +0100

Stavo svolazzando beatamente sulla citta`, quando all'improvviso
il mio super-udito percepi` Giovanni Caruso dire:
> Beeeeello....come si fa esattamente (dove trovo documentazione appropriata 
> per questa tematica)?
 
Eh... l'argomento e` vasto, madonna se e` vasto, ma vediamo di
darci una grattatina in cima, giusto per vedere se la cosa ti
ammalia... (anche perche` al solito, dopo che si sono imparate
le basi, e` tutto in discesa... o almeno falso piano)

1) installati il web server apache

http://www.apache.org per cattarsi i sorgenti e ricompilare,
<sito/cdrom> della tua distro preferita per cattarsi gli rpm

NB: anche se sul breve termine l'rpm paga, sul lungo termine
si finisce per preferire il sorgente... anche perche` spesso
certe distro lo personalizzano troppo...

2) Supponiamo ora tu abbia installato il tutto...
da qualche parte (/usr/local/apache/conf:/etc/QUALCOSA/)
dovresti avere un file httpd.conf che dovrebbe dichiarare da
qualche parte una direttiva "ScriptAlias /cgi-bin/ CGIPATH"

cd CGIPATH
$EDITOR mioscript.cgi
# in questo file inseriremo come prima linea "#!/bin/bash"
# per farne uno script bash, ed aggiungeremo una linea 'echo -e
# "Content-Type:text/html\n\n"' da qualche parte...
chmod +x mioscript.cgi

I CGI non sono altro che semplici programmi in cui:
le informazioni sul e dal server si ricevono dall'environment,
le form POST si ricevono sullo stdin,
alcune GET sulla linea di comando,
lo stdout viene rispedito al client (il browser).

Il browser pero` vuole vedere alcune linee di informazione
prima del testo e/o del codice html, gli header. Questi tra
l'altro lo informano su quale tipo di dati contenga il resto
della comunicazione. Il "Content-Type:MIME-TYPE\n\n" assolve
proprio questo compito... E` mandatorio. "\n\n" sancisce la
fine degli headers...

3)      opera -newpage http://localhost/cgi-bin/mioscript.cgi?query
        links http://localhost/cgi-bin/mioscript.cgi?query
        lynx http://localhost/cgi-bin/mioscript.cgi?query
        mozilla http://localhost/cgi-bin/mioscript.cgi?query

> > Poi se sul server hai un qualche linguaggio di scripting,
> > le possibilita' ovviamente si moltiplicano...
> MA che server e server....il prg deve girare in locale su una macchina che 
> non é neppure connessa in rete....:-)
Dicesi server:
 1. A program which provides some service to other ({client})
     programs. [...]
 2. A computer which provides some service for other computers
     connected to it via a network. [...]

In questo caso si ricade nel caso #1.
 
> > Questa e` potenza, questa e` versatilita`, cavolo.
> > Abbiamo molto da imparare da questa gente... :-)
[...Dalla MicroSft...] 
> Infatti....poi hanno preso spunto e hanno creato linux....conosci?.-D
Linux XP? ;-)

> Ciao e grazie,
See ya & prego,
Zingus 

PS: allego script cgi di esempio per il piacere di grandi
e piccini...  Come notera` chi se lo legge, la shell e`
una specie di inferno per chi scrive cgi... E non e` sano
immaginare che uno script shell non banale possa essere in
qualche modo definito ``sicuro''...

PPS:
SEE ALSO
http://httpd.apache.org/docs-project/
http://lantech.geekvenue.net/chucktips/jason/chuck/1003605961/index_html

P^3S: Dato che ad oggi sono disponibili due versioni stabili
di apache (A PAtCHy web server) la 1.3 e la 2.0, mi trovo
costretto a consigliarti vivamente la prima. Per ora moduli
per linguaggi come php funzionano maluccio con la 2.x (che e`
andata a modificare proprio il sistema dei moduli...)
-- 
  _________  +-------------------------------------------------------+
\/   _____/ /  http://as0.da.ru  http://as1.da.ru      icq:164939262 |
ZJR _____/ |  alternative mailto:zingus_at_despammed.com             |
/\______/  +-------------------------------------- Zingus J. Rinkle -+
========---------- 
  
 Prima di scrivere in m-list per favore leggi il regolamento 
 http://www.lugge.net/soci/index.php?link=manifesto.htm#list 
 
 Archivio delle e-mail postate in lista 
 http://www.freelists.org/archives/lugge/ 
 
 Modifica dell'account su freelists 
 http://www.freelists.org/cgi-bin/lsg2.cgi  
 
----------======== 
 
 Orari di apertura della sede e come arrivarci: 
 http://www.lugge.net/soci/index.php?link=sede.htm 
  
 
 
  

Other related posts: