Daftar persyaratan yang harus dimiliki:
- dapat melayani halaman HTML statis dan file (gambar, arsip terkompresi, file teks ASCII dll) melalui HTTP.
- menjadi konservatif sumber daya . Ia menggunakan apa yang diperlukan untuk mengirim data melalui jaringan dalam bentuk memori dan CPU, dan tidak lebih.
- memiliki jejak instalasi kecil.
- gunakan hanya bandwidth jaringan sebanyak yang diperlukan.
- menjadi dewasa .
- menjadi mudah untuk mengkonfigurasi.
- dikompilasi menjadi kode asli. Tidak ada Python atau Java dll.
Apa yang tidak saya butuhkan:
- Opsi konfigurasi yang rumit. Jika diperlukan nanti, saya akan beralih ke Apache httpd.
- Dukungan untuk menjalankan CGI, Perl, PHP, Java, Server Side Include atau "ekstra" lainnya.
Ada saran?
linux
web-server
p.campbell
sumber
sumber
Jawaban:
nginx Pelajari lebih lanjut di situs wiki nginx .
Panas, cepat, kecil. Beberapa% dari survei Netcraft .
sumber
Lighttpd datang ke pikiran.
Menurut dokumentasi tutorial Lighttpd , mengkonfigurasi server statis membutuhkan waktu sekitar 5 menit:
sumber
Ada banyak tapi saya pribadi suka Cherokee. Ini relatif baru tetapi juga sangat sederhana untuk dikonfigurasi dengan web-gui bawaan.
sumber
Mungkin saya akan downvoted karena solusi ini tidak dikompilasi ke dalam kode asli per daftar "harus memiliki" pertanyaan, tetapi untuk konten statis itu tidak jauh lebih mudah daripada berbagi direktori saat ini dengan satu baris Python:
Perhatikan bahwa port 9914 adalah arbitrer dan hanya contoh yang digunakan di mana saya menemukan solusi ini: http://linux.byexamples.com/archives/506/python-simple-http-server-for-file-sharing
Secara alami, Anda juga dapat melakukan ini dengan Perl:
. . . seperti yang dijelaskan di http://search.cpan.org/~ingy/IO-All-0.39/lib/IO/All.pod#A_Tiny_Web_Server
sumber
$ python -m http.server 8000
Server yang persis seperti yang Anda gambarkan:
Server yang sangat cepat, yang juga dapat melayani halaman dinamis jika diperlukan:
sumber
Beberapa komentator telah menyebutkan lighttpd. Pilihan lain adalah thttpd.
sumber
Cepat, aman, efisien, fitur rendah: publicfile oleh Dan Bernstein.
sumber
atau kHTTPd - server dibangun ke dalam kernel linux?
sumber
Saya akan pergi dengan Cherokee di sini. Juga, saya akan melupakan Apache. Kita semua tumbuh dewasa, sayang, menggunakan apache, bersenang-senang dengannya, dan mysql. Kita semua memiliki ingatan yang hebat, dan kita semua tahu bagaimana menggunakannya. :)
Namun, itu adalah masa lalu, diwarnai melalui kacamata berwarna mawar. Penggunaan memori yang besar, proses yang berat, file konfigurasi yang rumit, interpreter tertanam .. feh. Di zaman VPS sekarang ini, tidak ada lagi yang perlu lemak pantat lagi. Cinta kenangan, tetapi simpan RAM Anda untuk aplikasi Anda.
sumber
Saya telah menggunakan mathopd selama 2 tahun terakhir untuk menyajikan konten statis [campuran gambar di beberapa situs e-commerce + beberapa unduhan besar]. tanpa sakit kepala - mudah dikonfigurasikan, hanya berfungsi dan membiarkan cpu di sebelah idle.
sumber
Saya telah mendapatkan hasil yang luar biasa selama bertahun-tahun dengan thttpd , sering melayani 250+ permintaan per detik (dan itu dirata-rata selama satu jam), dan sebanyak 400 permintaan serentak. Penggunaan memori rendah, stabilitas sangat tinggi dan beban sistem hampir tidak ada, bahkan pada beban req / detik yang tinggi.
Bill the Cat dari Bloom County, menjelaskan cara mengucapkan thttpd .
sumber
Anda mungkin ingin melihat http://www.lighttpd.net/. Tidak yakin apakah ini merupakan keharusan bagi kebutuhan Anda.
sumber
Ada server web komersial bernama Zeus yang cukup banyak digunakan dalam industri konten yang ditandai dengan konten statis volume tinggi. IIRC didasarkan pada async. I / O, yang sangat efisien pada CPU. Mungkin melakukan apa yang Anda inginkan, tetapi itu tidak gratis.
sumber
Anda dapat mencoba okws .
disalin dari okws.org
sumber
Agar lebih atau kurang lengkap, jangan lupa Hiawatha . Pengembangan yang satu ini cukup aktif dan memiliki komunitas yang ramah dan membantu.
sumber
Sebagian besar server web yang aman dan ringan telah disebutkan (mis. File publik, Nginx, Cherokee, dll). Jika tidak ada yang memenuhi persyaratan Anda, saya pikir saran saya adalah meng-host file statis Anda (aset) ke AWS S3 dan CloudFront dan Situs Google untuk halaman web Anda.
sumber