Документация по ОС FreeBSD Суббота, 27.04.2024, 20:21
Приветствую Вас Гость | RSS
Меню сайта

Категории каталога
Apache [58]
DNS [25]
FTP [27]
Mail [74]
Samba [24]
Squid [46]
SSH [23]
VPN [35]
РРР [20]
Net [173]

Главная » Статьи » Сеть » Apache

Lighttpd + FastCGI [2008]
Сидя на работе, решил заморочиться и перевести всё с Apache на Lighttpd, так как слышал про него много хороших отзывов, плюсами из которых из которых в первую очередь была быстрота. Ну и к тому же по статье Лиссяры у меня почему то не получилось завести FastCGI =) Значить сам Бог велел.
Итак приступаем. Ставить соответственно будем из портов.
Перед этим не забываем обновить их, так как совсем недавно версия сервера была обновлена.

#portsnap fetch update

Обновились, следующим шагом переходим в папку с сервером и устанавливаем его.

lexx# whereis lighttpd
lighttpd: /usr/ports/www/lighttpd
lexx# cd /usr/ports/www/lighttpd && make install clean

Вылезает окошко с опциями, я поставил его без опций: "IPV6, OPENLDAP, OPENSSL, VALGRIND, WEBDAV"
Все остальное выбрал.

После окончания установки лезем править конфиг

lexx# cd /usr/local/etc/
lexx# cp ./lighttpd.conf.sample ./lighttpd.conf
lexx# ee ./lighttpd.conf

Сразу бросается в глаза то, что сам конфигурационный файл не такой уж и большой как к  примеру файл апача.
Еще одно мое наблюдение: Некоторые опции отсутвствую в примерах, например дл mod_alias. Но все по порядку.
Привожу свой файл lighttpd.conf который полностью рабочий (только опции которые важны для работы, все остальное у меня закоментировано):

## список всех модулей
server.modules = (
 "mod_rewrite",
 "mod_redirect",
 "mod_alias",
 "mod_access",
# "mod_cml",
# "mod_trigger_b4_dl",
# "mod_auth",
# "mod_status",
# "mod_setenv",
 "mod_fastcgi",
# "mod_proxy",
# "mod_simple_vhost",
# "mod_evhost",
# "mod_userdir",
# "mod_cgi",
# "mod_compress",
# "mod_ssi",
# "mod_usertrack",
# "mod_expire",
# "mod_secdownload",
# "mod_rrdtool",
 "mod_accesslog" )

## Алиасы сервера: к примеру http://www.mysite.ru/phpmyadmin/
alias.url += ( "/phpmyadmin/" => "/usr/local/www/phpMyAdmin/" )

## Корневая папка сервера
server.document-root = "/usr/local/www/"

## Лог ошибок. Автоматически не создается
server.errorlog = "/var/log/lighttpd.error.log"

# Пример http://www.mysite.ru/index.php
index-file.names = ( "index.php", "index.html",
 "index.htm", "default.htm" )

## Где то читал что это важная опция =)
server.event-handler = "freebsd-kqueue"

# Расширения
mimetype.assign = (
 ".pdf" => "application/pdf",
 ".sig" => "application/pgp-signature",
 ".spl" => "application/futuresplash",
 ".class" => "application/octet-stream",
 ".ps" => "application/postscript",
 ".torrent" => "application/x-bittorrent",
 ".dvi" => "application/x-dvi",
 ".gz" => "application/x-gzip",
 ".pac" => "application/x-ns-proxy-autoconfig",
 ".swf" => "application/x-shockwave-flash",
 ".tar.gz" => "application/x-tgz",
 ".tgz" => "application/x-tgz",
 ".tar" => "application/x-tar",
 ".zip" => "application/zip",
 ".mp3" => "audio/mpeg",
 ".m3u" => "audio/x-mpegurl",
 ".wma" => "audio/x-ms-wma",
 ".wax" => "audio/x-ms-wax",
 ".ogg" => "application/ogg",
 ".wav" => "audio/x-wav",
 ".gif" => "image/gif",
 ".jar" => "application/x-java-archive",
 ".jpg" => "image/jpeg",
 ".jpeg" => "image/jpeg",
 ".png" => "image/png",
 ".xbm" => "image/x-xbitmap",
 ".xpm" => "image/x-xpixmap",
 ".xwd" => "image/x-xwindowdump",
 ".css" => "text/css",
 ".html" => "text/html",
 ".htm" => "text/html",
 ".js" => "text/javascript",
 ".asc" => "text/plain",
 ".c" => "text/plain",
 ".cpp" => "text/plain",
 ".log" => "text/plain",
 ".conf" => "text/plain",
 ".text" => "text/plain",
 ".txt" => "text/plain",
 ".dtd" => "text/xml",
 ".xml" => "text/xml",
 ".mpeg" => "video/mpeg",
 ".mpg" => "video/mpeg",
 ".mov" => "video/quicktime",
 ".qt" => "video/quicktime",
 ".avi" => "video/x-msvideo",
 ".asf" => "video/x-ms-asf",
 ".asx" => "video/x-ms-asf",
 ".wmv" => "video/x-ms-wmv",
 ".bz2" => "application/x-bzip",
 ".tbz" => "application/x-bzip-compressed-tar",
 ".tar.bz2" => "application/x-bzip-compressed-tar",
 # default mime type
 "" => "application/octet-stream",
 )

## Лог доступа. Тоже не создается автоматически, следовательно создаем вручную
accesslog.filename = "/var/log/lighttpd.access.log"

# Расширения для fastcgi
static-file.exclude-extensions = ( ".fcgi", ".php", ".rb", "~", ".inc", ".pl", ".yml" )

## Пид-файл сервера
server.pid-file = "/var/run/lighttpd.pid"

# Виртуальные директории
$HTTP["host"] == "www.mysite.su" {
server.document-root = "/usr/home/Mysite/public_html/"
server.error-handler-404 = "/index.php?error=404" }

$HTTP["host"] == "www.mysite2.ru" {
server.document-root = "/usr/home/Mysite2/public_html/mysite2/"
server.error-handler-404 = "/index.php?error=404"}

## Просмотр пустых директорий
dir-listing.activate = "enable"

## Пользователь, от которого работает сервер
server.username = "www"

## Группа, от которой работает сервер
server.groupname = "www"

## Конфигурация FastCGI (не забываем установить сам php)
fastcgi.server = ( ".php" =>( "localhost" =>
 ( "socket" => "/tmp/fcgi",
 "max-procs" => 2,
 "bin-environment" => (
 "PHP_FCGI_CHILDREN" => "4",
 "PHP_FCGI_MAX_REQUESTS" => "100"
 ),
 "bin-path" => "/usr/local/bin/php-cgi",
 "broken-scriptfilename" => "enable"
)
)
)

Ну и напоследок, ресурсов стало кушать все это хозяйство намного меньше, работает тоже быстренько. Так что удачи :)



Источник: http://www.lissyara.su/?id=1622
Категория: Apache | Добавил: oleg (21.03.2008) | Автор: AlkoGekS
Просмотров: 1337 | Рейтинг: 0.0/0 |
Всего комментариев: 0
Добавлять комментарии могут только зарегистрированные пользователи.
[ Регистрация | Вход ]
Форма входа

Beastie

Друзья сайта

Статистика

Онлайн всего: 1
Гостей: 1
Пользователей: 0
links

Copyright MyCorp © 2024