Установка и работа с веб-сервером lighttpd (статья в журнале WEB-ANALITIK.INFO, апрель 2010)

Веб-сервер — это программное обеспечение, принимающее 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 = (

Сохраняем файл и перезапускаем вебсервер — sudo /etc/init.d/lighttpd restart .

Можно проверить работу правильности подключения fastcgi-сервера так:

создаем файл /var/www/test.php с содержимым:

и запрашиваем этот скрипт через 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 такой блок для каждого из ваших доменов:

server.document-root = ‘/var/www/mydomen.com/’

Сохраняем файл конфигурации и перезагружаем вебсервер lighttpd. Поддержка виртуальных серверов выполнена.

Настройка завершена!

Вот такой легкий и удобный вебсервер может быть. Заметьте, что ни одного бородатого админа не потребовался для его установки и настройки. Все очень просто и быстро. Конечно, мы с вами никаким образом не касались тонкой настройки вебсервера, но и того, что мы с вами уже сделали вполне достаточно для работы ваших сайтов. Вебсервер lighttpd успешно используется на таких посещаемых сайтах как The Pirate Bay, Imageshack.us, freebsd.org.

статья опубликована в журнале Веб-Аналитик.ИНФО, (№1) апрель 2010 год

Источник



Установка PHP на Lighttpd 1.4 на Unix системах

Этот раздел содержит информацию по установке PHP на Unix-системы с сервером Lighttpd 1.4.

Прочитайте, пожалуйста, инструкции по установке Lighttpd в » документации по Lighttpd перед установкой PHP.

Fastcgi — предпочитаемый интерфейс для связи PHP и Lighttpd. Fastcgi доступен по умолчанию в PHP начиная с версии 5.3. Для предыдущих версий необходимо конфигурировать PHP с флагом —enable-fastcgi. Чтобы убедиться, что PHP скомпилирован с поддержкой fastcgi, необходимо проверить наличие (cgi-fcgi) в выводе команды php -v. Для версии 5.2.5 это будет выглядеть так: PHP 5.2.5 (cgi-fcgi). До версии 5.2.3 не существовало отдельного файла php-cgi, fastcgi встраивался в основной бинарный файл php.

Кроме этого:  Балансирный уравновешивающий вал

Управление процессами php через Lighttpd

Для настройки Lighttpd на соединение с PHP и порождения процессов fastcgi необходимо отредактировать конфигурационный файл lighttpd.conf. Предпочтительнее подключаться к процессам fastcgi используя unix-сокеты.

Пример #1 Пример части файла lighttpd.conf

Директива bin-path задает путь к исполняемому файлу php. Lighttpd будет динамически создавать дочерние процессы php, согласно переменной окружения PHP_FCGI_CHILDREN. Директива bin-environment задает настройки для дочерних процессов. PHP_FCGI_MAX_REQUESTS определяет порог, при достижении которого PHP завершит дочерний процесс. Директив "min-procs" и "max-procs" обычно стоит избегать. PHP управляет только своими дочерними процессами, и инструменты кэширования в байткод (например, APC) будут использоваться только в этих дочерних процессах. Если значение "min-procs" установлено больше 1, общее количество процессов, обрабатывающих запросы, будет равно PHP_FCGI_CHILDREN * min-procs.

Управление процессами с помощью spawn-fcgi

Lighttpd предоставляет программу spawn-fcgi для облегчения управления дочерними процессами.

Управление процессами с помощью php-cgi

Управлять процессами можно и без spawn-fcgi, но это потребует некоторых доработок. Переменная окружения PHP_FCGI_CHILDREN указывает количество дочерних процессов, запускаемых PHP для обработки входящих запросов. Переменная PHP_FCGI_MAX_REQUESTS отвечает за количество запросов, которые обработает один процесс. Ниже приведен простой bash-скрипт, облегчающий создание дочерних процессов.

Пример #2 Создание FastCGI-обработчиков

Подключение к удаленным процессам FCGI

Обработчики fastcgi могут находиться на нескольких отдельных машинах для масштабирования нагрузки.

Источник

Ubuntu lighttpd php

Ubuntu lighttpd php
Итак будем ставить Ubuntu lighttpd +php
Ставить будем на виртуальной машине сугубо на посмотреть.
У меня уже есть на VirtualBox готовая Ubuntu 14.04.3 LTS посему я ее просто клонирую. Имя пользователя virtual.

Из специцифки на ней уже стоит openssh сервер. Поставить его можно:

Добавим проброс портов дабы не пускать машину в нашу сеть
Тип подключения NAT

Порт 55555 для HTTP
Порт 6666 для SSH

Кроме этого:  Остекление балконов под ключ в Нижнем Новгороде

Ставим lighttpd и php

PS: Для Ubuntu 16.04 компоненты изменились

Добавляем модули php в lighttpd

Перезапускаем сервис lighttpd

На этом настройка окончена.
Можно посмотреть подключенные модули:

Посмотреть что мы натворили можно по адресу:
http://127.0.0.1:55555/
Так же можно вместо 127.0.0.1 использовать свой локальный адрес

Можно посмотреть информацию о php

Это все особо не интересно посему будем накатывать информацию о сервере phpSysInfo
Идем на сайт http://phpsysinfo.github.io/phpsysinfo/ и качаем последнюю версию Source code (zip)
Заливаем на нашу виртуальную машину

Опять идем на нашу виртуальну машину

Череда непонятных комманд. Основная суть это распаковать наш архив. Все его содержимое закинуть в /var/www/ и создать файл конфигурации phpsysinfo.ini из шаблона phpsysinfo.ini.new

Уже можно посмотреть на то что мы сделали
http://127.0.0.1:55555/

Можно немного поправить конфигурацию. Приведены те параметры что были изменены.

Источник

Заметки по установке Lighttpd+PHP в Ångström Linux

Поскольку после установки из коробки на Ångström не обнаружилось каких-либо вэб-серверов, то было решено ставить уже многим известный, вэбсервер Lighttpd.

В данный момент уже все работает, и команда управления пакетами opkg выдаёт следующий список установленных пакетов:

Для их установки, войдя root-ом, выполняется команда:

Перечислены не все пакеты, т.к. остальные ставятся автоматически при обработке зависимостей.

Установка PHP

Помимо этого, для работы PHP, следует установить еще:

Пришлось довольствоваться установленным PHP 5.2.13 (cgi-fcgi) (built: Nov 11 2012 09:56:48).

Настройки

Имейте в виду, что все странички, по умолчанию, располагаются в директории /www/pages, что не совсем привычно (для меня). И была такая ситуация, что почему-то в настройках /etc/lighttpd.conf домашней директорией прописалась несуществующая /usr/share/matrix-gui-2.0, поэтому, после установки пакетов, пришлось вносить поправки в конфиг:

Запуск и проверка

Тут все просто, root-ом стартуем скрипт lighttpd сервиса:

В браузере открывается лаконичная страничка «It works!».

Данная статья не подлежит комментированию, поскольку её автор ещё не является полноправным участником сообщества. Вы сможете связаться с автором только после того, как он получит приглашение от кого-либо из участников сообщества. До этого момента его username будет скрыт псевдонимом.

Источник