Repository 32bit  Forum
Repository 64bit  Wiki

un server http leggero

Forum dedicato alla programmazione.

Moderatore: Staff

Regole del forum
1) Citare in modo preciso il linguaggio di programmazione usato.
2) Se possibile portare un esempio del risultato atteso.
3) Leggere attentamente le risposte ricevute.
4) Scrivere i messaggi con il colore di default, evitare altri colori.
5) Scrivere in Italiano o in Inglese, se possibile grammaticalmente corretto, evitate stili di scrittura poco chiari, quindi nessuna abbreviazione tipo telegramma o scrittura stile SMS o CHAT.
6) Appena registrati è consigliato presentarsi nel forum dedicato.

La non osservanza delle regole porta a provvedimenti di vari tipo da parte dello staff, in particolare la non osservanza della regola 5 porta alla cancellazione del post e alla segnalazione dell'utente. In caso di recidività l'utente rischia il ban temporaneo.

un server http leggero

Messaggioda brg » lun dic 05, 2011 18:11

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
Avatar utente
brg
Linux 2.4
Linux 2.4
 
Messaggi: 240
Iscritto il: sab mar 12, 2011 14:20
Località: Montecatini
Slackware: 14.1
Kernel: 3.10.17
Desktop: KDE4

Re: un server http leggero

Messaggioda miklos » lun dic 05, 2011 18:39

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
ho visto cose che voi astemi non potete immaginare
miklos
Linux 3.x
Linux 3.x
 
Messaggi: 1200
Iscritto il: lun lug 16, 2007 16:39
Località: Roma
Slackware: 14.1 64bit
Kernel: 3.12.6
Desktop: openbox 3.5.2

Re: un server http leggero

Messaggioda brg » lun dic 05, 2011 19:30

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.
Avatar utente
brg
Linux 2.4
Linux 2.4
 
Messaggi: 240
Iscritto il: sab mar 12, 2011 14:20
Località: Montecatini
Slackware: 14.1
Kernel: 3.10.17
Desktop: KDE4

Re: un server http leggero

Messaggioda shark1500 » lun dic 05, 2011 20:55

Solo un paio che non hai elencato: lighthttpd (il nome non e` un caso) e nginx
Avatar utente
shark1500
Linux 2.6
Linux 2.6
 
Messaggi: 785
Iscritto il: gio apr 03, 2008 13:33
Località: Modna
Slackware: current
Kernel: 2.6.27.7-smp
Desktop: kde

Re: un server http leggero

Messaggioda brg » lun dic 05, 2011 21:11

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.
Avatar utente
brg
Linux 2.4
Linux 2.4
 
Messaggi: 240
Iscritto il: sab mar 12, 2011 14:20
Località: Montecatini
Slackware: 14.1
Kernel: 3.10.17
Desktop: KDE4

Re: un server http leggero

Messaggioda shark1500 » lun dic 05, 2011 21:17

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.
Avatar utente
shark1500
Linux 2.6
Linux 2.6
 
Messaggi: 785
Iscritto il: gio apr 03, 2008 13:33
Località: Modna
Slackware: current
Kernel: 2.6.27.7-smp
Desktop: kde

Re: un server http leggero

Messaggioda miklos » lun dic 05, 2011 21:34

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.
ho visto cose che voi astemi non potete immaginare
miklos
Linux 3.x
Linux 3.x
 
Messaggi: 1200
Iscritto il: lun lug 16, 2007 16:39
Località: Roma
Slackware: 14.1 64bit
Kernel: 3.12.6
Desktop: openbox 3.5.2

Re: un server http leggero

Messaggioda pino_otto » mar dic 06, 2011 8:14

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
pino_otto
Linux 2.4
Linux 2.4
 
Messaggi: 323
Iscritto il: dom lug 09, 2006 10:57
Località: Torino - Changchun (China)
Slackware: 14.1
Kernel: 3.10.17-smp
Desktop: KDE 4.10.5

Re: un server http leggero

Messaggioda shark1500 » mar dic 06, 2011 9:47

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.
Avatar utente
shark1500
Linux 2.6
Linux 2.6
 
Messaggi: 785
Iscritto il: gio apr 03, 2008 13:33
Località: Modna
Slackware: current
Kernel: 2.6.27.7-smp
Desktop: kde

Re: un server http leggero

Messaggioda ZeroUno » mar dic 06, 2011 12:04

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.
Allegati
tinyhttpd.tar.bz2
(8.2 KiB) Scaricato 18 volte
Packages finder: slakfinder.org | Slackpkg+, per aggiungere repository a slackpkg
Codice: Seleziona tutto
1011010 1100101 1110010 1101111 - 0100000 - 1010101 1101110 1101111
Avatar utente
ZeroUno
Staff
Staff
 
Messaggi: 4299
Iscritto il: ven giu 02, 2006 13:52
Località: Roma / Castelli
Nome Cognome: Matteo Rossini
Slackware: current
Kernel: slack-current
Desktop: ktown-latest
Distribuzione: 01000000-current

Re: un server http leggero

Messaggioda brg » gio dic 08, 2011 16:23

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.
Avatar utente
brg
Linux 2.4
Linux 2.4
 
Messaggi: 240
Iscritto il: sab mar 12, 2011 14:20
Località: Montecatini
Slackware: 14.1
Kernel: 3.10.17
Desktop: KDE4

Re: un server http leggero

Messaggioda ZeroUno » gio dic 08, 2011 17:13

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.
Packages finder: slakfinder.org | Slackpkg+, per aggiungere repository a slackpkg
Codice: Seleziona tutto
1011010 1100101 1110010 1101111 - 0100000 - 1010101 1101110 1101111
Avatar utente
ZeroUno
Staff
Staff
 
Messaggi: 4299
Iscritto il: ven giu 02, 2006 13:52
Località: Roma / Castelli
Nome Cognome: Matteo Rossini
Slackware: current
Kernel: slack-current
Desktop: ktown-latest
Distribuzione: 01000000-current

Re: un server http leggero

Messaggioda ponce » ven dic 09, 2011 15:21

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
Avatar utente
ponce
Linux 3.x
Linux 3.x
 
Messaggi: 1459
Iscritto il: mer mar 05, 2008 16:45
Località: limbo
Nome Cognome: Matteo Bernardini
Slackware: slackware64-current
Kernel: 3.16-rc4
Desktop: lxde


Torna a Programmazione

Chi c’è in linea

Visitano il forum: Nessuno e 0 ospiti

cron