Веб-сервер на два фронта

Дата: 17.09.2008

Рубрики: *NIX

Мне все-таки удалось собрать php-fpm на OpenBSD 4.3, но об этом чуть ниже, сейчас к вопросу поставленному в заголовке.

Имея дома компьютер раздающий интернет иногда возникает необходимость иметь к нему доступ извне, и конечно же не только по SSH. У меня такая необходимость обусловлена необходимостью лазить в web-интерфейс «биллинга» и иногда в phpMyAdmin, находясь при этом вне дома.

Имеющийся в комплекте OpenBSD apache ветки 1.3, к превеликому сожалению, слегка подглюкивает, теряет модули при перезапуске, как следствие падает при ротации логов и т.п., может быть, конечно, что я просто не умею его готовить, но от его использования я решил отказаться. Естественно выбор пал на уже опробованный мной в условиях приближенных к боевым Lighttpd, имеющийся к тому же среди доступных пакетов.

Допустим, что из интернета сервер откликается на имя homenet.domain.com, а из локальной сети допустим на gate.homenet.

Для работы phpMyadmin и биллинга я предлагаю создать поддомены myadmin.homenet, billing.homenet — внутри и myadmin.homenet.domain.com, billing.homenet.domain.com — снаружи. В этом случае нам потребуется в конфигурации lighttpd описать только два виртуальных хоста, примерно вот так:

###### my vhosts
$HTTP["host"] =~ «myadmin\.homenet (.*)$» {
server.document-root = «/var/www/phpMyAdmin»
fastcgi.server = ( «.raquo; =>
(( «socket» => «/var/fpm/fpm.sock»,
«bin-copy-environment» => (
«HOSTNAME», «PATH», «TMP», «TMPDIR», «TE
MP», «OSTYPE», «MACHTYPE», «MALLOC_CHECK_» ),
«broken-scriptfilename» => «enable»
))
)
}

Аналогично для биллинга.

Естественно что для работы нужен Мне как я уже говорил удалось заставить работать fpm. Из портов не собирается, сильно там пропатченый, пришлось собирать руками, и ставить в отдельную директорию. Однако и тут тоже не все так просто и методом проб и ошибок я выяснил что iconv и gettext надо собирать static, иначе не собирается.

В общем строка для конфигурирования выглядит так (я ставлю в /usr/local/

./configure --prefix=/usr/local/--disable-cli --with-regex=--with-layout=GNU \
— disable-all --enable-libxml --with-libxml-dir=/usr/local --enable-reflection \
— disable-ipv6 --with-config-file-scan-dir=/usr/local/etc/--enable-fastcgi \
— enable-fpm --with-fpm-conf=/usr/local/php-fpm.conf \
— with-fpm-log=/var/log/fpm.log --with-fpm-pid=/var/run/fpm.pid \
— with-iconv=/usr/local --with-gettext=/usr/local --with-pcre-regex

Все собралось и вполне себе работает. За примерами конфигурации отправляю ищущих к моей на эту тему.

Естественно стоит так же позаботиться и о контроле доступа снаружи к 80 порту, но это уже на личное усмотрение каждого.

Связанные записи

Метки: , , ,

Комментариев нет на запись "Веб-сервер на два фронта"

Ваш комментарий может быть первым :) .

Оставить комментарий

Имя:
E-mail:
Сайт:
Вы можете использовать OpenID
или зарегистрироваться.