Pagina 1 di 1

un server http leggero

Inviato: lun 5 dic 2011, 18:11
da brg
Salve a tutti, la scorsa settimana mi sono messo a manipolare un po' il codice sorgente del server Boa, il cui sviluppo è apparentemente fermo dal 2005, ed ho messo il risultato su altervista. Avevo scaricato Boa perché era esattamente quello di cui avevo bisogno: un server ultraleggero che funziona perfettamente anche se non viene installato con "make install". Tuttavia Boa ha qualche problemuccio e qualche mancanza, tipo PHP non funzionante e niente codifica Unicode, così ho pensato di metterci le mani un po' su. Ho notificato ciò all'ultimo mantainer noto di Boa, ma non mi ha ancora risposto: se non ricevo una risposta entro un paio di settimane penso di fare un fork e mettere tutto su google-code.

Nel frattempo se qualche animo avventuroso decidesse di provare Aspis (è il nome che ho scelto per la mia versione non ufficiale di Boa :oops: ) mi farebbe un piacere, magari scopre qualche bug che ancora non conosco :D

Per una compilazione senza patemi d'animo consiglio un "./configure --prefix=/tmp/aspis --enable-utf8", "make", "make install-strip"... a quel punto l'eseguibile in /tmp/aspis/bin/ dovrebbe lanciare il server senza problemi, basta indicare l'ubicazione della directory contenente file di configurazione. Usando il file di configurazione di esempio contenuto in prefix/share/aspis: "/tmp/aspis/bin/aspis -c /tmp/aspis/share/aspis"
Ovviamente per una installazione di sistema il file di configurazione andrebbe messo in /etc

Re: un server http leggero

Inviato: lun 5 dic 2011, 18:39
da ilmich
Ciao

1) sono andato sul sito ma non ho capito dove prendere i sorgenti
2) l'idea è carina e sono curioso, ma non ho ben capito la differenza rispetto ad altre soluzioni (di server web ne stanno uno scatafascio)
3) leggendo altri contenuti del sito ti consiglio di lasciar perdere ssl(se, come immagino, la risposta al punto 2 è che è ultraminimale, non lo userei probabilmente in un contesto dove ssl è fondamentale) e comunque, come giustamente hai segnalato tu, ci puoi mettere un proxy tipo pond per questo
4) punta al supporto fastcgi.. soprattutto perchè ultimamente sta venendo fuori un nuovo modo di usare php tramite un estensione chiamata fpm che è veramente una bomba

aspetto news e buon lavoro
ciau

Re: un server http leggero

Inviato: lun 5 dic 2011, 19:30
da brg
Ah, dev'essere per il fatto che il tema predefinito di Pluck usa il grassetto per indicare i collegamenti, comunque sia i sorgenti sono qui.
Per rispondere alle altre domande dico che di server web ne ho provati a bizzeffe prima di usare Boa (monkey httpd, thttpd, mathopd, gatling, fnord, hiawatha...), solo che: alcuni non si compilano (roba creata per *BSD che sotto Linux ha bisogno di patch per compilare), altri funzionano solo con una installazione di sistema, altri ancora si appoggiano a inetd, altri non supportano pagine dinamiche. Il primo che compilasse, avesse un CGI funzionante e funzionasse in una directory locale senza bisogno di superutenti è stato Boa, peccato solo per il PHP ed una manciata di altri bug.

Re: un server http leggero

Inviato: lun 5 dic 2011, 20:55
da shark1500
Solo un paio che non hai elencato: lighthttpd (il nome non e` un caso) e nginx

Re: un server http leggero

Inviato: lun 5 dic 2011, 21:11
da brg
shark1500 ha scritto:Solo un paio che non hai elencato: lighthttpd (il nome non e` un caso) e nginx
Lighttpd l'ho usato per un annetto ed è ottimo, solo che non è nella stessa categoria di quelli che ho elencato: ha bisogno di una installazione di sistema*, ha un eseguibile che sfiora il MB. Per confronto Boa è ~85kB, thttpd ~50kB, Hiawatha che è il più grande fra quelli che ho nominato è meno della metà di Lighttpd.

*siccome uso il server per provare i miei siti prima di caricarli in rete, mi conviene poter lanciare il server nelle directory utente dove li creo.

Re: un server http leggero

Inviato: lun 5 dic 2011, 21:17
da shark1500
Non devi per forza fare una "installazione di sistema" (sempre se ho capito cos'e`). Basta avviarlo su un'altra porta che non necessiti di privilegi di root e puoi avviarlo da utente normale senza installare niente. Ma cosi` come (quasi) tutti.

Per il fatto della dimensione non e` sempre vero che se ha piu` linee di codice allora e` necessariemente piu` pesante.

Re: un server http leggero

Inviato: lun 5 dic 2011, 21:34
da ilmich
secondo me puo' avere un senso invece.. configurare apache/nginx per servire directory usate per lo sviluppo non è una cosa complicata, ma è comunque un passaggio da fare e in alcuni casi (quello di nginx) non cosi' intuitiva se ti trovi in presenza di diverse applicazioni che sviluppi contemporaneamente (devi giocare con gli alias.. host virtuali..)

l'unico problema che vedo in questo approccio è il fatto che di solito è sempre bene avere a disposizione il server dove il sito andra in 'produzione' perchè ci sono delle eccezioni che rendono un applicazione php non completamente usabile su un altro server (mi viene da pensare all'.htaccess)

comunque appena ho un minuto di tempo lo provo.

Re: un server http leggero

Inviato: mar 6 dic 2011, 8:14
da pino_otto
una semplice alternativa molto comoda e':

$ python -m SimpleHTTPServer 8000

lo lanci nella directory che vuoi servire via http

qui maggiori info: http://docs.python.org/library/simplehttpserver.html

Re: un server http leggero

Inviato: mar 6 dic 2011, 9:47
da shark1500
Io non ho detto che sia una cattiva idea, ma IMHO solo a livello di prove personali, niente di piu`.
Un server web e` una cosa MOLTO complessa (se si vogliono avere tante funzioni), e penso che ce ne siano gia` abbastanza che fanno il loro sporco lavoro, sia leggeri che non.

Re: un server http leggero

Inviato: mar 6 dic 2011, 12:04
da ZeroUno
Questo sicuramente l'hai già provato, è uno di quelli che non compilano.

Non ha bisogno di file di configurazione né di make install. Fai cp e te lo metti dove ti pare
supporta i cgi.

Io l'ho patchato e compila. Ho anche fatto una patch per compilarlo staticamente, utile quando la vuoi distribuire per funzionare su qualsiasi distribuzione, anche datata (quindi con eventuali glibc insufficienti).
A 64bit su current mi viene 14k la versione normale e 750k la versione statica.

Lanciare con
./httpd <porta>
in cui se porta è 0 ne sceglie lui una a caso. Non è necessario essere root per avviarlo (se lo usi su porta >= 1024)

Allego sorgenti e patch.

Re: un server http leggero

Inviato: gio 8 dic 2011, 16:23
da brg
ZeroUno ha scritto:Questo sicuramente l'hai già provato, è uno di quelli che non compilano.
Interessante, andrebbe pacchettizzato perché potrebbe essere utile per qualche soluzione embedded, tra l'altro ho visto che nemmeno Debian ne ha un pacchetto. Tuttavia ha la pecca di appoggiarsi a inetd, che non è una soluzione molto efficiente.

P.S.: intanto ho rilasciato aspis 0.2, con un po' di debug e un discreto supporto al chroot.

Re: un server http leggero

Inviato: gio 8 dic 2011, 17:13
da ZeroUno
no, non si appoggia a inetd ma è standalone.

Lo stavo pacchettizzando diverso tempo fa, poi ho avuto dei problemi e non l'ho più fatto, poi è passato di mente.

Il problema era anche che mi sarebbe piaciuto inserire nello stesso pacchetto il binario compilato staticamente a 32bit, a 64bit e per win32 (utile se si vuole fare un sito da distribuire su cd). Ma non avrei saputo come metterla con lo slackbuild che chiaramente non può funzionare per fare tutto.

Re: un server http leggero

Inviato: ven 9 dic 2011, 15:21
da ponce
brg ha scritto:Lighttpd l'ho usato per un annetto ed è ottimo, solo che non è nella stessa categoria di quelli che ho elencato: ha bisogno di una installazione di sistema
per esercizio, ho provato ad adattare lo slackbuild di lighttpd di slackbuilds.org (togliendo l'utente dedicato) per lanciarlo da utente e fare un tarball con un'installazione in $MY_PREFIX (presettato a /tmp/lighty): si avvia e si ferma con $MY_PREFIX/etc/rc.d/rc.lighttpd (ascolta sulla porta 1025)

http://pastebin.com/MfJph0R3