WEB сервисы

Эта глава включает приложения, отвечающие на запрсы, приходящие от LAN, интранет и интернет клиентов. Особенно перекрыты HTTP запросы и FTP запросы.

Apache-2.0.53

Введение в Apache

Пакет Apache содержит свободный HTTP сервер. Он полезен для создания локальных web сайтов или выполнения огромных операций обслуживания web.

Информация о пакете

Дополнительно

Зависимости Apache

Установка Apache

В целях безопасности запуск сервера под непривилегированным пользователем и группой очень не рекомендуется. Создадим следующего пользователя и группу выполнив следующие команды (как root):

groupadd apache && useradd -c "Apache Server" -d /dev/null -g apache -s /bin/false apache

Следующий патч определит вид директорий назначения и, среди прочего, директорию build в /usr/lib/apache/build. Это позволит добавленным в Apache модулям отконфигурироваться без ошибок. Применим патч:

patch -Np1 -i ../httpd-2.0.53-config-1.patch

Соберем и установим Apache запуском следующих команд:

./configure --enable-layout=FHS --enable-mods-shared=all && make

А теперь, как пользователь root:

make install && chown root:root /usr/sbin/{apxs,apachectl,dbmmanage,envvars-std,envvars} \ /usr/include/apache/* /usr/lib/apache/httpd.exp \ /usr/share/man/man1/{dbmmanage,htdigest,htpasswd}.1 \ /usr/share/man/man8/{ab,apachectl,apxs,httpd}.8 \ /usr/share/man/man8/{logresolve,rotatelogs,suexec}.8 && chown -R apache:apache /srv/www

Описание команд

--with-expat=/usr: Использует системный expat. Если у вас установлен expat и не использован этот ключ, то установка Apache может переписать некоторые файлы из установки expat.

--enable-mods-shared=all: Модули должны быть откомпилированы и использованы как Dynamic Shared Objects (DSO), поэтому они должны включаться и выключаться из сервера, используя исполняемые директивы конфигурации.

--enable-ssl: Используйте этот ключ для создания модуля mod_ssl и включения поддержки SSL.

chown root:root ...: Эта команда изменяет владельца некоторых установленных файлов в результате сборки пакета под пользователем, отличным от root.

chown -R apache:apache /srv/www: По умолчанию, процесс установки устанавливает файлы (документацию, сообщения об ошибках и т.д.) с владельцем, соответствующем пользователю, который извлек файлы из tar архива. Если вы хотите изменить владельца на другого пользователя, то вы должны сделать так, как здесь указано. Только требуется, чтобы директории документов были доступны процессу httpd с правами доступа (r-x), а файлы должны быть доступны для чтения (r--) пользователю apache.

Конфигурация Apache

Файлы конфигурации

/etc/apache/*

Конфигурационная информация

Основной файл конфигурации называется httpd.conf. Измените его для запуска сервера назначенным пользователем:

sed -i -e "s%User nobody%User apache%" \ -e "s%^Group #-1%Group apache%" \ /etc/apache/httpd.conf

Смотрите http://httpd.apache.org/docs-2.0/configuring.html для детальных инструкций по настройке вашего сервера Apache HTTP

Есть проблема с модулем ISAPI DSO, проявляющаяся прикомпиляции с GCC-3.4.1. Закоментируйте модуль в файле конфигурации при помощи следующей команды:

sed -i -e "s/^LoadModule isapi_module/# &/" \ /etc/apache/httpd.conf

Если вы хотите запускать сервер Apache автоматически во время загрузки системы, то установите стартовый скрипт /etc/rc.d/init.d/apache, включенный в пакет blfs-bootscripts-6.0.

make install-apache

Содержание

Установленные программы: ab, apachectl, apr-config, apu-config, apxs, checkgid, dbmmanage, htdbm, htdigest, htpasswd, httpd, instdso.sh, logresolve и rotatelogs
Установленные библиотеки: libapr-0.[so,a], libaprutil-0.[so,a] и /usr/lib/apache/*.so
Установленные директории: /etc/apache, /srv/www, /usr/include/apache, /usr/lib/apache и /var/log/apache

Короткое описание

ab

средство измерения производительности HTTP сервера Apache.

apachectl

оболочка к HTTP серверу Apache, который разработан для помощи администратору в контроле функционирования httpd демона Apache.

apxs

средство для сборки и установки модулей расширения для HTTP сервера Apache.

dbmanage

используется для создания и обновления файлов в формате DBM, используемых для сохранения имен пользователей и паролей для базовой аутентификации пользователей HTTP.

htdigest

используется для создания и обновления flat-файлов, используемых для сохранения имен пользователей, областей и паролей для сборной аутентификации HTTP пользователей.

htpasswd

используется для создания и обновления flat-файлов, используемых для сохранения имен пользователей и паролей для базовой аутентификации HTTP пользователей.

httpd

программа HTTP сервера Apache.

instdso.sh

скрипт, устанавливающий модули DSO Apache.

logresolve

программа последующей обработки для разрешения IP-адресов в лог-файлах доступа Apache.

rotatelogs

простая программа для использования в связке с функциями перенаправленных лог-файлов Apache.