SliTaz GNU/Linux official and community documentation wiki.
.png
Translations of this page:

Веб-сервер LightTPD

О LightTPD

В этой главе описывается настройка и использование веб-сервера LightTPD. Это быстрый, защищенный и гибкий НТТР-сервер, использующий совсем немного памяти. Он позволяет разумно управлять загрузкой процессора и имеет поддержку FastCGI, CGI, Auth, сжатие Output, смену URL и т.д. LightTPD дает возможность сэкономить, разместив ваш сайт на старом компьютере.

В SliTaz этот сервер автоматически запускается при загрузке и изначально настроен на РНР. Файлы корневого каталога, предоставляемые по умолчанию, находятся в /var/www, там же содержится начальная страница index.html, изображения помещаются в папку images/. Сайт LightTPD: www.lighttpd.net

/var/www — корневой каталог файлов

Этот каталог представляет собой начальную папку для файлов; к нему можно обращаться через URL http://localhost/. Если вы собираетесь размещать сайт, вы можете хранить все файлы в этой папке. В случае размещения нескольких сайтов необходимо создать виртуальные хосты. Также вы можете проверить адрес http://localhost/server-status.

~Public — общая папка пользователей

SliTaz предоставляет пользователям системы общее место для хранения веб-документов (как правило, файлов HTML). Соответствующая папка называется Public, она должна находиться в корневом каталоге вашего пользовательского пространства, к примеру, /home/hacker/Public. Создать эту папку поможет команда mkdir:

$ mkdir ~/Public

После этого к ней можно получить доступ через http://localhost/~hacker/. Можно также использовать имя или IP-адрес компьютера, если вы подключаетесь с другой машины.

/etc/lighttpd/lighttpd.conf — файл конфигурации LightTPD

Основной файл настроек для LightTPD (lighttp.conf) находится в /etc/lighttpd/. Этот файл в составе SliTaz хорошо прокомментирован, вам достаточно просто ознакомиться с ним. На сайте LightTPD вы найдете другие примеры этого файла. В SliTaz также есть файл vhosts.conf для настройки виртуальных хостов (нужны при размещении нескольких сайтов на одном сервере).

Запуск, остановка и перезапуск веб-сервера

По умолчанию в SliTaz сервер запускается при старте системы. Чтобы убрать его из автозагрузки, нужно убрать lighttpd из переменной RUN_DAEMONS файла /etc/rcS.conf.

Чтобы запустить, остановить или перезапустить сервер, используйте команду /etc/init.d/lighttpd [start|stop|restart]. Пример перезапуска сервера после правки файла конфигурации:

# /etc/init.d/lighttpd restart

CGI-скрипты в Perl

Чтобы LightTPD мог использовать путь к исполняемому файлу Perl и CGI/Perl, нужно установить Perl и внести изменения в файл настроек сервера. Вот как это сделать в Geany:

 # tazpkg get-install perl
 # geany /etc/lighttpd/lighttpd.conf & 
# CGI-модуль. После установки Perl назначает обработку скриптов с расширениями .pl и .cgi программе /usr/bin/perl
$HTTP["url"] =~ "/cgi-bin/" {
  cgi.assign = (
    ".sh" => "/bin/sh",
    ".cgi" => "/usr/bin/perl",
    ".pl" => "/usr/bin/perl"
  )
}

CGI-скрипты в Python

Проделаем те же действия для Python:

 # tazpkg get-install python
 # geany /etc/lighttpd/lighttpd.conf &
# CGI-модуль, назначающий обработку скриптов .py и .cgi программе /usr/bin/python
$HTTP["url"] =~ "/cgi-bin/" {
  cgi.assign = (
    ".sh" => "/bin/sh",
    ".cgi" => "/usr/bin/python",
    ".py" => "/usr/bin/python"
  )
}

Чтобы изменения вступили в силу, просто перезапустите сервер:

# /etc/init.d/lighttpd restart

Авторизация — инструмент для защиты папок

В состав LightTPD входят модули авторизации, которые, среди прочего, могут защищать ту или иную папку. Сервер также предоставляет несколько способов авторизации, но мы начнем с использования основного метода, не требующего шифрования паролей. Чтобы использовать модуль mod_auth, необходимо установить пакет lighttpd-modules (tazpkg get-install lighttpd-modules). После установки добавьте название модуля в список модулей:

# Модули для загрузки.
# См. /usr/lib/lighttpd для списка всех доступных модулей.
#
server.modules = (
  "mod_access",
  "mod_auth",
  "...",
)

Теперь можно настраивать модули, указав уровень и способ отладки (простой), а также путь к файлу, содержащему список имен, использующих защищенный пароль для доступа к папкам. Также нужно указать папки, требующие авторизации. В следующем примере применим защиту к папке admin/ и разрешим доступ к ней пользователю tux (user=tux):

# Авторизация для защищенной папки.
auth.debug = 2
auth.backend = "plain"
auth.backend.plain.userfile = "/etc/lighttpd/plain.passwd"
auth.require = ( "/admin/" =>
  (
    "method" => "basic",
    "realm" => "Password protected area",
    "require" => "user=tux"
  )
)

Наконец, создадим файл, содержащий пароли, добавим пользователя и перезагрузим сервер для проверки. Основной синтаксис для этого файла — пользователь:пароль. Файл можно создать командой echo или в текстовом редакторе. Добавим запись tux:root в файл паролей /etc/lighttpd/plain.passwd:

# echo "tux:root" > /etc/lighttpd/plain.passwd

или

# nano /etc/lighttpd/plain.passwd

Чтобы протестировать адрес http://localhost/admin/, просто перезапустите сервер:

# /etc/init.d/lighttpd restart

Статью перевел Кирилл Шевцов

 
ru/handbook/webserver.txt · Last modified: 2012/12/24 18:08 by mojo