Инсталляция HTTP-сервера
Категория: Web-хостинг и серверы Internet | Автор: admin | 13-06-2010, 00:23 | Просмотров: 3367

Установить Web-сервер очень просто! Web-службы не сравнимы в плане легкости администрирования с системами электронной почты и службой DNS.

 

Выбор сервера

 

Большинство поставщиков UNIX не включают HTTP-сервер в системный дистрибутив (правда, в состав FreeBSD и Red Hat входит HTTP-сервер Apache). Поэтому придется потратить некоторое время на выяснение того, какой сервер наилучшим образом подходит для данного приложения и выбранной платформы. К счастью, на сегодняшний день имеется целый ряд весьма неплохих серверов. Наиболее популярные из них выпускаются компаниями Netscape и Apache.

Достаточно полное сопоставление характеристик доступных HTTP-серверов можно найти на Web-узле webcompare.intemet.com. Ниже указано несколько факторов, которые следует учитывать при осуществлении выбора:

  • надежность;
  • производительность;
  • своевременность обновлений и исправлений ошибок;
  • доступность исходного кода;
  • цена;
  • безопасность и контроль доступа;
  • возможность использования в качестве прокси-сервера;
  • возможность шифрования.

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

 

Компилирование и инсталляция сервера Apache

 

HTTP-сервер Apache распространяется бесплатно, и его полный исходный код доступен на Web-узле www.apache.org. Первым делом обратитесь на данный узел и загрузите последнюю версию сервера.

По окончании загрузки вызовите сценарий configure (включен в дистрибутив), который автоматически определяет тип операционной системы, а также устанавливает соответствующие файлы сборки проекта. Потребуется указать каталог, где должен располагаться сервер Apache. Для этого предназначена опция --prefix:

% ./configure —prefix=/usr/local/apache/

 

Некоторые компоненты сервера Apache могут включаться и отключаться с помощью опций -enable-module= и -disable-module= сценария configure. Установленный по умолчанию набор модулей вполне приемлем, но имеются и дополнительные модули (табл. 22.2).

Таблица 22.2. Дополнительные модули Apache, которые по умолчанию не включены

Модуль

Назначение

auth_dbm

Использует базу данных DBM для управления доступом со стороны пользователей/групп (рекомендуется)1

auth_db

Использует базу данных DB для управления доступом со стороны пользователей/групп (рекомендуется)1

use rt rack

Позволяет отслеживать щелчки мышью в броузерах, поддерживающих технологию "cookie"

rewrite

Переписывает URL-адреса, используя регулярные выражения

expires

Позволяет включать в документ дату его истечения

proxy

Конфигурирует Apache в качестве прокси-сервера (подробнее о данной технологии рассказывается далее в этой главе)

1   Рекомендуется использовать один из перечисленных модулей (но не оба сразу).

 

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

Таблица 22.3. Модули Apache, которые могут быть отключены

 

Модуль

Функция

asis

Позволяет посылать файлы указанных типов без использования HTTP-заголовков

autoindex

Индексирует каталоги, в которых отсутствует начальная HTML-страница (например, index.html)

env

Позволяет устанавливать специальные переменные среды для CGI-сценариев

include

Разрешает использовать серверные вставки (старый способ создания динамического содержимого).

userdir

Разрешает пользователям иметь собственные HTML-каталоги

 

Полный перечень стандартных модулей можно найти в файле src/Configuration, входящем в дистрибутив Apache, либо по адресу www.apache.org/ docs/mod/index.html.

После выполнения сценария configure запустите сценарии make и make install для фактической компиляции и установки соответствующих файлов. Во FreeBSD сервер Apache является одним из дополнительных программных пакетов, который может быть установлен из каталога /usr/ports (подробнее об этом каталоге рассказывается в параграфе 27.9). Для инсталляции Apache перейдите в каталог /usr/ports/www/apachl3 и введите команду make.

 

Конфигурирование сервера Apache

 

После установки сервера необходимо сконфигурировать его с учетом выполняемых функций. Все файлы конфигурации находятся в каталоге conf (например, /usr/local/apache/conf). Необходимо проверить и настроить три различных файла конфигурации: httpd.conf, srm.conf и access.conf.

Файл httpd.conf определяет, каким образом демон Apache (httpd) взаимодействует с системой. В этом файле задается TCP-порт, через который HTTP-сервер принимает запросы (обычно это порт 80). На одном компьютере можно запустить несколько HTTP-серверов, подключенных к различным портам. Помимо этого в файле httpd.conf указывается местоположение журнальных файлов, а также задаются различные параметры, определяющие характеристики сети и производительность сервера. Здесь же осуществляется настройка виртуальных интерфейсов (дополнительные сведения по этому вопросу приводятся в следующем параграфе).

Ресурсы, доступ к которым необходим серверу, настраиваются в файле srm.conf. В нем располагается самая важная директива — DocumentRoot, которая задает корневой каталог для обслуживаемых документов. В этом файле также содержится ряд дополнительных установок, связанных, в частности, с обработкой "специальных" URL-адресов (например, http:// www.xor.com/~steve).

Параметры безопасности устанавливаются в файле access.conf. Он включает директивы, которые позволяют управлять доступом на уровне каталога или файла. С их помощью можно предотвратить доступ к важным файлам через демон httpd как из внешнего мира, так и внутри организации.

Необходимо задать как минимум два уровня управления доступом: на одном уровне будет охватываться весь каталог документов, а второй должен применяться только к каталогу cgi-bin. В последнем случае вызов сценариев осуществляется только из каталога cgi-bin. Таким образом, отдельные пользователи не могут создавать "бреши" в системе безопасности — случайно или намеренно — с помощью своих собственных сценариев. Для установки этого ограничения задайте опцию ExecCGI в файле srm.conf.

 

Запуск сервера Apache

 

Демон httpd можно запустить вручную либо воспользовавшись стартовыми сценариями, имеющимися в системе. Последний способ предпочтительнее, поскольку гарантирует, что Web-сервер перезапускается всякий раз при перезагрузке компьютера. Для запуска сервера вручную следует ввести примерно такую команду:

 

% /usr/local/apache/apachectl start
 

 

Если требуется, чтобы демон httpd запускался автоматически на этапе начальной загрузки, вставьте следующий фрагмент когда в функцию lосаlrc() стартовых сценариев либо включите его в файл /etc/rc.local, если используется отдельный локальный сценарий.

 

if [ -х /usr/local/apache/httpd ]; then

    /usr/local/apache/apachectl start

    echo -n 'www_server'

fi

 



 (голосов: 0)
Версия для печати | Комментариев: 0
Информация
Посетители, находящиеся в группе Гости, не могут оставлять комментарии в данной новости.


 
Логин
Пароль
 

 
Locations of visitors to this page