Установка и работа с веб-сервером lighttpd
Что такое Веб-Сервер?
Веб-сервер — это программное обеспечение, принимающее HTTP-запросы от клиентов (веб-браузеров), и выдающий им HTTP-ответы, с прикрепленными HTML-страницей, изображением, видео или другими файлами. Это основа Всемирной паутины, в которой мы живем последние 15-20 лет. Наиболее распространенным веб-сервером, которого ставят на серверах, работающих под управлением *Nix операционных систем является свободный веб-сервер Apache. Однако для новичка он очень сложен в конфигурировании, — к нему должен обязательно прилагаться бородатый админ, который бы его настраивал под нужны веб-сервера.
Но у нас с вами нет под рукой бородатого администратора сервера, поскольку часто он дорого стоит, либо он сегодня много выпил пива, но администрировать веб-сервер все-равно надо, а вот всякими дырявыми оболочками для администрирования пользоваться не хочется. Душа просит чистой консоли, работы с конфиге с любимым текстовым редактором vi. И тут нам на помощь приходит озарение — зачем использовать в качестве веб-сервера очень сложный apache, если есть более легкий lighttpd, который очень прост в конфигурировании и установке.
Как установить lighttpd?
Установка для безобразия проста. Если у вас linux Debian или подобные ему, то набирайте sudo apt-get install lighttpd и легкий вебсервер установлен. Для многих других операционных систем lighttpd тоже есть в репозитариях. Также можно скачать самую свежую версию с сайта http://www.lighttpd.net/ .
Как настраивать lighttpd?
А вот настраивать ничего не надо. Вебсервер уже функционирует — вам нужно только набрать в консоли:
~$ sudo /etc/init.d/lighttpd start
Syntax OK
* Starting web server lighttpd
…done.
Если вы получили сообщение такого вида, значит lighttpd запустился и слушает 80-й порт. Если вы увидели такое сообщение:
~$ sudo /etc/init.d/lighttpd start
Syntax OK
* Starting web server lighttpd
2010-03-12 14:35:59: (network.c.300) can’t bind to port: 80 Address already in use
…fail!
Значит на 80-м порту уже кто-то есть и скорее всего это вебсервер. В таком случае нужно остановить другой вебсервер и попробовать запустить lighttpd снова. Для проверки успешности установки вебсервера можно запустить команду wget http://localhost/index.html и посмотреть полученный файл index.html .
Скорее всего для работы ваших сайтов на этом вебсервере вам понадобится стандартный набор: php5, mysql5. Также, скорее всего вам нужно будет настраивать виртуальные хосты.
Для начала поставим поддержку php5 в lighttpd:
sudo apt-get install php5-cgi
Заходим в файл конфигурации php5 sudo vi /etc/php5/cgi/php.ini и изменяем строку ; cgi.fix_pathinfo = 0 на cgi.fix_pathinfo = 1 и сохраняем конфиг. И последний штрих: sudo vi /etc/lighttpd/lighttpd.conf добавляем в server.modules mod_fastcgi — получается такой вид конфига:
server.modules = (
«mod_access»,
«mod_alias»,
«mod_accesslog»,
«mod_compress»,
«mod_fastcgi»,
)
и прописываем настройки fastcgi-сервера:
fastcgi.server = (
«.php» => ((
«bin-path» => «/usr/bin/php-cgi»,
«socket» => «/tmp/php.socket»
)))
Сохраняем файл и перезапускаем вебсервер — sudo /etc/init.d/lighttpd restart .
Можно проверить работу правильности подключения fastcgi-сервера так:
создаем файл /var/www/test.php с содержимым:
<?
echo ‘Hello!’;
?>
и запрашиваем этот скрипт через wget http://localhost/php.php . Смотрим файл php.php и если видим текст «Hello!», то все мы настроили правильно.
Теперь поставим mysql5:
sudo apt-get install mysql-server-5.0
sudo apt-get install php5-mysql
Во время установки mysql5 потребуется ввести root-пароль для mysql. Поддержка mysql установлена и таким образом у нас получился эквивалент обычного LAMP-сервера. И нам осталось выполнить настройку виртуального сервера.
Для этого нужно добавить в конец конфигурационного файла lighttpd такой блок для каждого из ваших доменов:
$HTTP[«host»] == «mydomen.com» {
server.document-root = ‘/var/www/mydomen.com/’
}
Сохраняем файл конфигурации и перезагружаем вебсервер lighttpd. Поддержка виртуальных серверов выполнена.
Настройка завершена!
Вот такой легкий и удобный вебсервер может быть. Заметьте, что ни одного бородатого админа не потребовался для его установки и настройки. Все очень просто и быстро. Конечно, мы с вами никаким образом не касались тонкой настройки вебсервера, но и того, что мы с вами уже сделали вполне достаточно для работы ваших сайтов. Вебсервер lighttpd успешно используется на таких посещаемых сайтах как The Pirate Bay, Imageshack.us, freebsd.org.
статья опубликована в журнале Веб-Аналитик.ИНФО, (№1) апрель 2010 год