IPB

Здравствуйте, гость ( Вход | Регистрация )

> Установка и настройка веб-сервера lighttpd, lighttpd
builder
сообщение 24.2.2008, 11:05
Сообщение #1


Администратор
********

Группа: Главные администраторы
Сообщений: 1194
Регистрация: 2.9.2010
Пользователь №: 1



"]Установка и настойка веб-сервера lighttpd
Для linux.
Офсайт - ]]>http://www.lighttpd.net/]]>
Версия статьи - 1.0
Версия сервера - 1.4.16-7

0. Что это такое
lighttpd - маленький быстрый веб-сервер. Включает в себя множество функций, включая работу со скриптами и программами cgi (php,perl и др.), поддержку виртуальных хостов, SSI, компрессию, файлы .htaccess и многое другое. Он потребляет мало ресурсов, прост в настройке.
Минус сервера - документация по настройке включена только в windows-версию, или я плохо искал. man-страниц по конфигу нет, а есть ли они где ещё - не знаю.
Кстати, почти всё, что касается настройки сервера в linux можно перенести и на windows-версию. Единственное примечание - в windows модуль fastcgi НЕ РАБОТАЕТ! Используйте стандартный модуль cgi.

1. Установка
Если у вас Fedora 7 - то взять последнюю версию можно из репозитариев в ФОСе (см. ]]>здесь]]>).
То же касается и пользователей Ubuntu и Gentoo - репозитарии для них есть в ФОС. Но есть ли в них lighttpd - не знаю, не пробовал.
Качаем пакеты lighttpd и lighttpd-fastcgi (если планируете создавать php- или cgi-скрипты):
Код
yum -y install lighttpd lighttpd-fastcgi

За оба этих пакета отвечает 1 rpm-пакет - lighttpd-1.4.16-1.fc7.src.rpm - он с исходниками, поэтому с ним в lighttpd можно включить все нужные модули. Т.к. я ставил из репозитариев, у меня нет точных TTH, поэтому поищите в DC-клиентах по вышеприведённому имени пакета или просто по слову lighttpd. Или скачайте версию с официального сайта, сервер не так уж много весит.

2. Конфигурирование
Предположим, что сервер уже установлен. Он автоматически создаёт скрипт его запуска - /etc/init.d/lighttpd, т.е. его можно запускать через команду service. Файл конфигурации - /etc/lighttpd/lighttpd.conf (windows - C:\lighttpd\etc\lighttpd.conf).
Я приведу настройку для обычного домашнего сайта с php без форумов и особых наворотов.
Структура файла довольно проста. Говоря об опции, я буду указывать возможные её значения. Плюс ещё подробные комменты в самом файле.

server.modules - подключаемые модули lighttpd. Если вы ставите из rpm- или deb-пакета, то все эти модули будут установлены по умолчанию (кроме fastcgi, но о нём я уже говорил). После этой опции идёт список модулей. Большинство из них закомментированио (#). Модули mod_access и mod_access_log должны быть активированы всегда. Если у вас планируется использование php-скриптов, подключите модуль mod_fastcgi, если вы его установили, или модуль mod_cgi в обратном случае. В конце файла эти модули конфигурируются.

server.document-root - путь к каталогу с гипертекстовыми документами. Вы можете изменить путь на более вам удобный, например, "/home/dpx-infinity/wwwroot". Путь обязательно брать в кавычки. Это обязательная опция, её необходимо указать.

server.errorlog - путь к файлу лога ошибок. Также обязательно заключать в кавычки.

index-file.names - список имён файлов, которые будут выдаваться, если не запрошен какой-то конкретный файл. Например, если в этом списке указан "index.php", то, если такой файл существует и находится в корневом каталоге сервера (см. server.document-root), при запросе ]]>http://localhost/]]> он будет выведен.

mimetype.assign - список расширений файлов и соответствующим им mime-типов. Они нужны для удобства броузерной навигации. В этом списке есть большинство часто употребляемых типов, и мне не пришлось его изменять.

accesslog.filename - имя файла лога доступа к серверу. Туда будет записываться протокол доступа к серверу - кто что скачал/загрузил, их ip-адреса и другая полезная информация.

url.access-deny - к каким файлам (по расширению) нужно запретить доступ.

static-file.exclude-extensions - файлы с этим расширением не будут обрабатываться стандартными методами передачи файлов. Например, изначально здесь указаны расширения серверных сценариев (скриптов), которые обрабатываются модулями mod_fastcgi или mod_cgi.

#server.port - здесь можно поменять порт, который прослушивается сервером. По умолчанию - 80, поэтому строчка закомментирована. Уберите знак # и поставьте требуемое значение, если нужно. Но для запуска сервера с номером порта <1024 необходимы права суперпользователя.

#server.error-handler-404 - вы можете установить здесь путь к файлу, который сообщает пользователю об ошибке 404 (файл не найден). Я не пробовал, но возможно вместо 404 можно поставить другой номер и указать путь к соответствующему файлу. Путь отсчитывается относительно server.document-root.

#dir-listing.activate - если данная опция раскомментирована и в ней указано "enable", то при запросе каталога (не файла) при отсутствии в нём индексного файла (index-file.names) будет выдан список файлов в данном каталоге. По умолчанию - выключено (результат - ошибка 404).

#server.errorfile-prefix - эта опция нужна для более удобного управления страницами ошибок. Здесь указывается каталог и префикс файлов ошибок, например, если здесь указано "/var/www/errors/error-" то при запросе несуществующего файла (ошибка 404) будет выдан файл "/var/www/errors/error-404.html".

fastcgi.server - здесь идут настройки модуля fastcgi. Если вы пользуетесь php и установили модуль fastcgi, раскомментируйте всё, что касается этой опции. По умолчанию там заданы настройки для php, но можно добавлять ещё какие-либо настройки, например:
Код
fastcgi.server        = ( ".php" =>
                               ( "localhost" =>
                                 (
                                   "socket" => "/tmp/php-fastcgi.socket",
                                   "bin-path" => "/usr/bin/php-cgi"
                                 )
                               )
                                ".pl" =>
                               ( "localhost" =>
                                 (
                                   "socket" => "/tmp/perl-fastcgi.socket",
                                   "bin-path" => "/usr/bin/perl"
                                 )
                               )
                            )

Достаточно изменить имя сокета и путь к интерпретатору.

cgi.assign - если вы не устанавливали fastcgi по каким-то причинам, вы можете воспльзовать встроенным сgi-модулем. Он проще в конфигурировании. Раскомментируйте строчки опции, и, если требуется, добавьте собственный интерпретатор, например:
Код
cgi.assign                 = ( ".pl"  => "/usr/bin/perl",
                               ".cgi" => "/usr/bin/perl",
                                 ".php" => "/usr/bin/php-cgi" )


3. Заключение
После конфигурирования сохраните файл и перезапустите сервер ("sudo service lighttpd reload"), если он был запущен. Все изменения должны вступить в силу, и вы (и не только вы) сможете заходить на свой сайт.
Я здесь написал только об основных настройках сервера. Впоследствии эта статья будет обновляться.

Кстати, сайт ]]>http://vfose.ru/]]> работает именно на lighttpd smile.gif

© Dark "DPX-Infinity" Phoenix

Источник: Vfose.ru


--------------------
Перейти в начало страницы
 
+Цитировать сообщение

Сообщений в этой теме


Тема закрытаНачать новую тему
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 

Текстовая версия Сейчас: 29.3.2024, 9:13
 
     


Мнение администрации сайта может не совпадать с точкой зрения авторов статей и других материалов, опубликованных на сайте.
Все файлы расположенные на данном ресурсе были взяты из открытых источников.