AllInfo
Main: Info Blog Temp Mail


unix 2016-08-28 08-04-29

Установка мини www-серверов micro_httpd, mini_httpd и thttpd


Оригинал: http://baybox.narod.ru/linux/httpdemon.html


Маленький, простой, быстрый, безопасный HTTP-сервер
HTTP-сервера из лаборатории 'ACME' для UNIX платформ

* супер маленький сервер micro_httpd
* быстрый демон mini_httpd для среднего сервера
* быстрый и безопасный демон thttpd для больших серверов



Супер маленький www-сервер micro_httpd

Общая информация

Micro_httpd - очень маленький, написанный для Unix, HTTP-сервер. Он
запускается от inetd, что означает, что его скорость не рекордная, но
для сетей с низким траффиком, это весьма адекватно. Micro_httpd может
использоваться для обслуживания HTTPS запросов. Сервер обеспечивает
все основные особенности HTTP, включая:

* Security against ".." filename snooping.
* The common MIME types.
* Trailing-slash redirection.
* index.html
* Directory listings.


Согласитесь что для сервера домашней сети или локальной сети
небольшого предприятия не нужны монстры типа apatch, boa или даже
thttpd, здесь вполне уместно использовать небольшой и простой
www-сервер. На мой взгляд micro_httpd - лучший в своем классе!

Скачивание

Домашняя страничка авторов этого сервера и других замечательных
программ называется http://www.acme.com. Непосредственно сам сервер
находится на http://www.acme.com/software/micro_httpd . Забрать его от туда
очень легко, так как архив занимает всего 5кб!

Установка

1. Распаковываем полученный архив tar xvzf micro_http.tar.gz, заходим
в появившуюся директорию cd micro_httpd и даём команды для компиляции
make ; make install .

2. Теперь заходим в файл /etc/inetd.conf и добавляем стороку:

micro_httpd stream tcp nowait nobody /usr/local/sbin/micro_httpd
micro_httpd /home/www


/home/www - ваша директория с *.html файлами.

3. Далее открываем файл /ets/services и дописываем в него строку:

micro_httpd 8000/tcp # www server micro_httpd.


4. Теперь перезагружаем ПК и проверяем работу сервера командой
lynx localhost:8000.


Настройка

Настройка может заключаться в поддержке необходимой русской кодировки,
для этого в файле micro_thhpd.c в строках 164, 166, 193 устанавливаем
вместо значения по умолчанию 1251 или koi8-r.

Использование

Отчёты о запросах будут записываться в файл /var/log/messages. Ваш
сервер всегда готов ответить на запрос поступивший на 8000 порт. В
исходном состоянии оперативная память не используется. У меня
micro_httpd отлично работает на небольшом сервере 486DX2-66мгц,
ram_16mb с linux slackware 8.1.



Mini_httpd - маленький HTTP-сервер

Его предназначение - работа в сетях с низким или средним траффиком.
Его можно сконфигурировать для поддержки SSL/HTTPS и IPV6, также
программа поддерживает все основные особенности любого HTTP-сервера,
включая:

* GET, HEAD, and POST methods.
* CGI.
* Basic authentication.
* Security against ".." filename snooping.
* The common MIME types.
* Trailing-slash redirection.
* index.html, index.htm, index.cgi
* Directory listings.
* Multihoming / virtual hosting.
* Standard logging.
* Custom error pages.


Mini_httpd был написан по двум причинам. Первое - для экспериментов,
чтобы видеть как медленно (в самом деле) работают старые сервера в
сети. Действительно, тесты на FreeBSD 3.2 с mini_httpd показали что он
всего на 10% медленнее чем Apache. Другая причина при написании
mini_httpd состояла в том, чтобы получить простую платформу для
экспериментирования с новыми сетевыми технологиями, например SSL и
т.д.

Скачать программу можно по адресу http://www.acme.com/software/mini_httpd
Архив с исходниками занимает всего 40кб.

Для распаковки и установки полученного архива используем tar, затем
заходим в появившуюся директорию. Набираем команды для компиляции make
затем make install. В директориях появятся файлы:

/usr/local/sbin/mini_httpd
/usr/local/sbin/htpasswd
/usr/local/man/man8/mini_httpd.8
/usr/local/man/man1/htpasswd.1


Для автоматического старта www-сервера, при загрузке linux, создаём
запускающий файл /etc/rc.d/rc.httpd примерно такого содержания:

#!/bin/bash
#
/usr/local/sbin/mini_httpd -p 80 -u nobody -d /home/www/ \
-l /var/log/mini_httpd.log -T 1251 \
2>>/var/log/mini_httpd_err.log \
>>/var/log/mini_httpd_stdout.log
#


Можно создать любой другой запускающий файл такого содержания и
запускать www-сервер вручную, при необходимости:

mini_httpd -p 8000 -d /home/http/ -l /var/log/mini_httpd.log -T 1251


Если ваши документы написаны в KOI8, пишем -T koi8-r. Если у вас уже
стоит основной www-сервер на 80 порту, то используем другой, например:
-p 8080. Ключик -d определяет директорию со стартовым файлом
index.html, а ключик -l файл в который будет записываться лог. При
наличии вопросов, пишем man mini_httpd или mini_httpd --help.


THTTPD - простой, маленький, портативный, быстрый и безопасный HTTP-сервер

Общая информация

Простой :
При работе он использует только минимум ресурсов, необходимых для
поддержки HTTP/1.1. Хорошо, возможно немного больше чем минимум. hi.

Маленький :
Смотрите диаграмму сравнения (http://www.acme.com/software/thttpd/benchmarks.html).
Он также имеет очень небольшое время выполнения команды и очень осторожен
при распределении памяти.

Портативный :
Программа легко компилируется на большом количестве Unix-подобных OS,
проверено на FreeBSD, SunOS 4, Solaris 2, BSD/OS, Linux, OSF.

Быстрый :
В типичном использовании thttpd работает с такой же скоростью как
другие лучшие сервера (Apache, NCSA, Netscape). При очень большой
нагрузке thttpd работает намного быстрее!

Безопасный :
Программа хорошо защищена от нападений и зависаний при работе в сети.
Также реализована очень полезная возможность URL-traffic-based
throttling которой нет ни в одном другом сервере. Также поддеживается
IPV6 без каких либо дополнительных исправлений или опций.

Для того чтобы больше узнать об этом сервере пойдите на страницу
авторов (http://www.acme.com/software/) и почитайте там полную документацию.
Для самых нетерпеливых, привожу простой способ установки сервера.

Установка и настройка
1. Бежим на домашнюю страницу thttpd (http://www.acme.com/software/thttpd/),
скачиваем последнюю версию. Раскрываем архив и набираем ./configure
затем make и далее make install.

2. При запуске из коммандной строки нужно определить основные
параметры:

thttpd -d /usr/local/www -l /var/log/thttpd.log -T koi8-r


Если ваша страничка написана в Windows кодировке, тогда ставите -T 1251

3. Для больших подробностей смотрите также: man thttpd. Стартовую
страницу можно скомпилировать прямо в тело программы, тогда директорию
для html файлов можно вообще не определять, все изменения делайте в
файле config.h перед компиляцией программы.



Micro http://foto.prg.in.ua/md/dat/2016/2016-08-28_08-03-32_micro_httpd_14Aug2014.tar.gz
Mini http://foto.prg.in.ua/md/dat/2016/2016-08-28_08-03-43_mini_httpd-1.25.tar.gz
TH http://foto.prg.in.ua/md/dat/2016/2016-08-28_08-03-50_thttpd-2.27.tar.gz

3.144.248.24 / 2024-04-27_16-21-19 UTC.