Suggerisci un server Web Linux veloce, leggero e sicuro per servire contenuto statico [chiuso]


14

L'elenco dei requisiti indispensabili:

  • essere in grado di servire pagine e file HTML statici (immagini, archivi compressi, file di testo ASCII ecc.) su HTTP.
  • essere conservatore di risorse . Utilizza ciò che è necessario per inviare dati in rete sotto forma di memoria e CPU, e non molto altro.
  • avere un ingombro di installazione ridotto.
  • utilizzare solo la larghezza di banda di rete necessaria.
  • sii maturo .
  • essere facile da configurare.
  • essere compilato in codice nativo. No Python o Java ecc.

Cosa non mi serve:

  • Opzioni di configurazione complesse. Se necessario in seguito, passerò ad httpache di Apache.
  • Supporto per l'esecuzione di CGI, Perl, PHP, Java, Server Side Includes o altri "extra".

Qualche suggerimento per favore?


9
Lo chiamerei fulmineo, per favore, per sicurezza, server web per Linux. Non sono sicuro se quel nome avrebbe preso piede però.
Dominic Rodger,

Penso che abbiano pensato anche a quello, ma si sono stabiliti con "nginx".

Puoi sempre usare python: "python -m SimpleHTTPServer" questo servirà a server la directory corrente sulla porta 8000.
Gert M

Risposte:




8

Ce ne sono molti ma personalmente mi piace Cherokee. È relativamente nuovo ma anche molto semplice da configurare con una web gui integrata.


è ancora valido?
BigSack

8

Forse verrò ridimensionato perché queste soluzioni non sono compilate in codice nativo per l'elenco "must have" della domanda, ma per il contenuto statico non è molto più facile che condividere la directory corrente con una riga Python:

python -m SimpleHTTPServer 9914

Nota che la porta 9914 è arbitraria e semplicemente l'esempio usato dove ho trovato questa soluzione: http://linux.byexamples.com/archives/506/python-simple-http-server-for-file-sharing

Naturalmente, puoi farlo anche con Perl:

perl -MIO::All -e 'io(":8080")->fork->accept->(sub { $_[0] < io(-x $1 ? "./$1 |" : $1) if /^GET \/(.*) / })'

. . . come descritto su http://search.cpan.org/~ingy/IO-All-0.39/lib/IO/All.pod#A_Tiny_Web_Server


Con l'uso di Python-3$ python -m http.server 8000
webwurst

5

Il server che è esattamente quello che hai descritto:

  • kHTTPd - nel kernel, server molto semplice. Solo file statici.

Blazing server veloci, che anche in grado di servire pagine dinamiche se necessario:

  • lighttpd - il server creato come prova del concetto per risolvere il problema C10K.
  • nginx : molto popolare, spesso utilizzato per lo streaming o come proxy inverso.

4

Diversi commentatori hanno menzionato lighttpd. Un'altra opzione è thttpd.


1
sembra buono, è quello che usa Wile E Coyote? ;)

È ancora vivo? L'ultima versione
risale

4

Funzionalità veloci, sicure, efficienti e basse: file pubblico di Dan Bernstein.


Usiamo publicfile in diversi luoghi, incluso per semplici compiti come la distribuzione interna dei file di configurazione di WPAD. Molto veloce, molto semplice, funziona sempre.
mikebabcock,

3

o kHTTPd - il server integrato nel kernel linux?


La prima cosa che mi è venuta in mente. Non l'ho usato, ma ho visto l'opzione lì ogni volta che sto configurando un kernel.

A proposito, dal sito web, "A partire dal kernel 2.3.14, kHTTPd è integrato nel kernel". Quindi è stato in giro per il blocco alcune volte.

5
Tuttavia, a partire dal kernel 2.6, non è più integrato nel kernel.
MarkR,

3

Andrei con Cherokee qui. Inoltre, mi dimenticherei di Apache. Siamo cresciuti tutti, affettuosamente, usando apache, divertendoci e mysql. Tutti abbiamo dei bei ricordi e sappiamo tutti come usarlo. :)

Quello, tuttavia, è il passato, colorato attraverso gli occhiali color rosa. Utilizzo della memoria del culo grasso, processi grassi, file di configurazione complessi, interpreti incorporati .. feh. Nell'era odierna di VPS nessuno ha più bisogno di apache di culo grasso. Adoro i ricordi, ma salva la RAM per le tue app.


2

utilizzo mathopd da 2 anni per pubblicare contenuti statici [mix di immagini su alcuni siti di e-commerce + un paio di download di grandi dimensioni]. nessun mal di testa: facile da configurare, funziona e lascia la CPU accanto al minimo.


2

Ho ottenuto risultati eccellenti per anni con httpd , servendo spesso oltre 250 richieste al secondo (e che è stata mediata nel corso di un'ora) e fino a 400 richieste simultanee. L'uso della memoria è basso, la stabilità è estremamente elevata e il carico del sistema è quasi nulla, anche con un carico elevato di req / sec.

Bill the Cat di Bloom County, spiega come pronunciare thttpd .


1

Potresti dare un'occhiata a http://www.lighttpd.net/. Non sono sicuro che sia eccessivo per le tue esigenze.


1

Esiste un server Web commerciale chiamato Zeus che è ampiamente utilizzato nelle industrie di contenuti caratterizzate da contenuto statico ad alto volume. IIRC è basato su asincrono. I / O, che è molto efficiente su CPU. Potrebbe fare quello che vuoi, ma non è gratuito.


1

Potresti provare okws .

OKWS è un server Web, specializzato nella creazione di servizi Web veloci e sicuri. Fornisce agli sviluppatori Web un piccolo set di strumenti che si è dimostrato abbastanza potente da creare sistemi complessi con uno sforzo limitato. Nonostante la sua enfasi sulla sicurezza, OKWS mostra vantaggi in termini di prestazioni rispetto ai concorrenti più diffusi: durante la manutenzione di carichi di lavoro di database completamente dinamici e non legati al disco, il throughput e la reattività di OKWS superano quelli di Apache , Flash (il re regnante delle prestazioni del server Web) e Haboob ( un sistema accademico noto per essere il più veloce server Web Java sul blocco). L'esperienza commerciale con OKWS suggerisce che il sistema può ridurre i costi di gestione dell'hardware e del sistema, fornendo al contempo garanzie di sicurezza assenti negli attuali sistemi.

copiato da okws.org


1

Per essere più o meno completo, non dimenticare Hiawatha . Lo sviluppo su questo è abbastanza attivo e ha una comunità amichevole e utile.


0

La maggior parte dei server Web sicuri e leggeri sono già stati citati (ad esempio file pubblico, Nginx, Cherokee, ecc.). Se nessuno di questi passerà ai tuoi requisiti, penso che il mio suggerimento sia quello di ospitare i tuoi file statici (risorse) su AWS S3 e CloudFront e Google Sites per le tue pagine web.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.