Запропонуйте блискавичний, функціональний, захищений веб-сервер Linux для обслуговування статичного вмісту [закрито]


14

Перелік обов'язкових вимог:

  • вміти обслуговувати статичні HTML-сторінки та файли (зображення, стислі архіви, текстові файли ASCII тощо) через HTTP.
  • бути ресурсозберігаючим . Він використовує те, що потрібно для передачі даних по мережі у вигляді пам'яті та процесора, і не набагато більше.
  • мати невеликий слід встановити.
  • використовувати лише стільки пропускної здатності мережі, скільки необхідно.
  • бути зрілим .
  • бути простим у налаштуванні.
  • бути складеним у рідний код. Немає Python чи Java тощо.

Що мені не потрібно:

  • Складні параметри конфігурації. Якщо згодом знадобиться, я перейду на Apache httpd.
  • Підтримка запуску CGI, Perl, PHP, Java, Side Server Includes або інших "додаткових".

Будь-які пропозиції, будь ласка?


9
Я б назвав це lightningfastlowonfeaturessecurewebserverforlinux. Не впевнений, чи захопило б це ім'я.
Домінік Роджер

Я думаю, що вони теж про це думали, але вони погодилися з `nginx '.

Ви завжди можете використовувати python: "python -m SimpleHTTPServer", це буде сервер поточного каталогу в порту 8000.
Gert M

Відповіді:




8

Є багато, але мені особисто подобається Черокі. Це відносно нове, але також дуже просте налаштування за допомогою вбудованої веб-гуї.


чи все-таки він дійсний?
BigSack

8

Можливо, мені вдасться сприйняти те, що ці рішення не компілюються в рідний код за списком "must have", але для статичного вмісту це не набагато простіше, ніж спільний доступ до поточного каталогу з вкладишем Python one:

python -m SimpleHTTPServer 9914

Зауважте, що порт 9914 - довільний і просто той приклад, який я використовував, де я знайшов це рішення: http://linux.byexamples.com/archives/506/python-simple-http-server-for-file-sharing

Звичайно, ви також можете це зробити за допомогою Perl:

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

. . . як описано на веб-сторінці http://search.cpan.org/~ingy/IO-All-0.39/lib/IO/All.pod#A_Tiny_Web_Server


З використанням Python-3$ python -m http.server 8000
webwurst

5

Сервер, який саме описаний вами:

  • kHTTPd - в ядрі, дуже простий сервер. Лише статичні файли.

Стрімкі швидкі сервери, які також можуть при необхідності обслуговувати динамічні сторінки:

  • LigHTTPd - сервер, зроблений як доказ концепції вирішення проблеми C10K.
  • nginx - дуже популярний, часто використовується для потокової передачі або як зворотний проксі.

4

Кілька коментаторів згадали про lighttpd. Ще один варіант - thttpd.


1
добре виглядає, це те, що використовує Wile E Coyote? ;)

Це ще живе? Останній реліз відбувся у грудні 03, а архів списку розсилки припиняється у травні 08
JonDrnek

4

Швидкі, безпечні, ефективні, низькі можливості: публічне повідомлення від Дана Бернштейна.


Ми використовуємо publicfile у кількох місцях, у тому числі для простих завдань, таких як внутрішній розподіл файлів конфігурації WPAD. Дуже швидко, дуже просто, завжди працює.
mikebabcock

3

або kHTTPd - сервер, вбудований у ядро ​​Linux?


Перше, що впало мені в голову. Я не використовував його, але я бачив там варіант, коли я налаштовую ядро.

BTW, з веб-сайту, "Станом на ядро ​​2.3.14, kHTTPd інтегрується в ядро." Так це було кілька разів навколо блоку.

5
Однак, як і для ядра 2.6, воно більше не вбудоване в ядро.
MarkR

3

Я б пішов з Черокі сюди. Також я забув би про Apache. Ми всі росли, мило, використовуючи апаш, веселячись ним і mysql. У всіх нас чудові спогади, і ми всі знаємо, як ним користуватися. :)

Це, однак, минуле, підфарбоване через рожеві окуляри. Використання жирової пам’яті, жирових процесів, складних файлів конфігурації, вбудованих перекладачів. У сьогоднішньому віці VPS нікому вже не потрібні жирні дупи. Любіть спогади, але зберігайте оперативну пам’ять для своїх додатків.


2

Я використовую Mathopd протягом останніх 2 років для подачі статичного вмісту [суміш зображень на якомусь сайті електронної комерції + пара великих завантажень]. немає головних болів - легко налаштувати, просто працює і залишає процесор поруч із режимом очікування.


2

Я мав відмінні результати протягом багатьох років із thttpd , часто обслуговуючи 250 запитів за секунду (і це було усереднено протягом години), і навіть 400 одночасних запитів. Використання пам'яті низьке, стабільність надзвичайно висока, а завантаження системи майже нічого, навіть при великому навантаженні в режимі / сек.

Білл Кіт графства Блум, пояснює, як вимовляється thttpd .


1

Можливо, ви захочете подивитися на http://www.lighttpd.net/. Я не впевнений, чи це надмір для ваших вимог.


1

Існує комерційний веб-сервер під назвою Zeus, який досить широко використовується в контентній галузі, що характеризується великим обсягом статичного вмісту. IIRC заснований на асинхронізації. I / O, що дуже ефективно в процесорі. Це може робити те, що ви хочете, але це не безкоштовно.


1

Ви можете спробувати okws .

OKWS - це веб-сервер, спеціалізований для створення швидких та безпечних веб-сервісів. Він надає веб-розробникам невеликий набір інструментів, який виявився досить потужним для створення складних систем з обмеженими зусиллями. Незважаючи на акцент на безпеці, OKWS демонструє переваги у порівнянні з популярними конкурентами: при обслуговуванні повністю динамічних навантажень бази даних, не пов’язаних з диском, пропускна здатність та чутливість OKWS перевищують показники Apache , Flash (правлячий король продуктивності веб-сервера) та Haboob ( академічна система, яка вважається найшвидшим веб-сервером Java в блоці). Комерційний досвід роботи з OKWS дозволяє стверджувати, що система може зменшити витрати на апаратне забезпечення та управління системою, забезпечуючи відсутність гарантій безпеки в діючих системах.

скопійовано з okws.org


1

Щоб бути більш-менш повною, не забувайте про Hiawatha . Розвиток у цьому є досить активним та має дружню та корисну спільноту.


0

Більшість захищених та легких веб-серверів уже згадувалося (наприклад, publicfile, Nginx, Cherokee тощо). Якщо жоден із них не відповідатиме вашим вимогам, я думаю, що я пропоную розмістити статичні файли (активи) на AWS S3 та CloudFront та Google Sites для своїх веб-сторінок.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.