Сетевые средства Linux
Шрифт:
Следует хорошо представлять себе различия между Web-узлом и Web-сервером. Web-узел, как было сказано выше, — это набор документов, представленных в Web, при обращении к которым пользователи указывают URL. В этих URL содержится доменное имя, которое часто отражает название организации. В отличие от Web-узла, Web-сервер — это набор программных или аппаратных средств, обеспечивающих поддержку Web-узла. При желании можно организовать работу Web-узла, не устанавливая в локальной сети Web-сервер. Для этого надо воспользоваться услугами сторонней организации, предоставляющей дисковое пространство своего Web-сервера для размещения на нем требуемых документов и программ. Как вы узнаете из данной главы, Web-сервер можно настроить так, чтобы его действия зависели от имени, указанного в запросе. Чтобы при указании имени, принадлежащего вашему домену, обращение осуществлялось к внешнему серверу, на котором размещены ваши
Сервер, на котором размещаются ваши документы, необходимо настроить для обработки обращений по указанному вами адресу. Кроме того, вам необходимо иметь доступ к внешнему компьютеру, на котором выполняется Web-сервер, для того, чтобы записать данные на его диск.
Размещение данных на внешнем сервере имеет ряд преимуществ по сравнению с поддержкой собственного Web-сервера. Например, пропускная способность линии, посредством которой ваша локальная сеть подключена к Internet, может быть недостаточной для организации обмена данными с Web-сервером. (Так, например, линия с пропускной способностью 200 Кбод, которая может находиться в нерабочем состоянии до пяти часов в месяц, хороша для домашнего использования, но не подходит для большой компании, такой как IBM.) Размещая данные на сервере другой организации (например, на сервере провайдера), вы избавлены от необходимости поддерживать собственный Web-сервер. Недостатком такого подхода является необходимость платить деньги за аренду дискового пространства на сервере (от нескольких долларов до нескольких тысяч долларов в месяц, в зависимости от объема данных и трафика). Кроме того, некоторые внешние серверы не обеспечивают необходимых ресурсов. Например, может оказаться, что сервер не поддерживает CGI или SSL.
Существуют также другие способы размещения Web-узла за пределами вашей локальной сети. Один из таких способов состоит в том, что вы располагаете компьютер с вашим Web-сервером в локальной сети другой организации, обычно в сети провайдера. При этом сервер обменивается данными с клиентами по надежной линии с высокой пропускной способностью, и в то же время вы получаете возможность настроить сервер в соответствии со своими потребностями. Еще одно решение состоит в использовании Web-страниц, предоставляемых по умолчанию вместе с некоторыми учетными записями. В этом случае в составе URL вместо имени вашей организации будет указано имя провайдера, например
Несмотря на наличие альтернативных решений, вам все же необходимо рассмотреть целесообразность инсталляции Web-сервера в локальной сети. Если Web-сервер нужен вам для внутреннего взаимодействия, его, несомненно, придется установить. При этом необходимо уделить должное внимание его настройке: конфигурация, заданная по умолчанию, в этом случае вряд ли подойдет вам. При инсталляции некоторых версий Linux Web-сервер устанавливается по умолчанию. Если Web-сервер на этом компьютере не нужен, для его поддержки будут напрасно расходоваться ресурсы. Кроме того, неиспользуемый Web-сервер нежелателен с точки зрения безопасности. С другой стороны, в некоторых версиях Linux Web-сервер применяется для предоставления пользователям справочных данных, поэтому его присутствие оправдано даже на рабочей станции. Общие правила таковы: если без Web-сервера можно обойтись, его не следует устанавливать. Web-сервер необходимо инсталлировать только на том компьютере, который используется для организации работы Web-узла.
Программы, реализующие Web-сервер в системе Linux
В настоящее время существует несколько программных продуктов, позволяющих обеспечить функционирование Web-сервера в системе Linux. Некоторые программы имеют небольшой размер и поддерживают лишь ограниченный набор возможностей, другие представляют собой большие пакеты и позволяют реализовать разнообразные, даже самые "экзотические", функции. Ниже описаны наиболее популярные Web-серверы, предназначенные для Linux.
• Apache. Этот продукт поставляется в составе каждого дистрибутивного пакета Linux. Как правило, процедура установки системы запрашивает пользователя,
• Roxen. Этот продукт также представляет собой полнофункциональный Web-сервер; во многом он напоминает Apache. Его настройка осуществляется посредством Web-интерфейса, что привлекает некоторых начинающих администраторов. Дополнительную информацию о Roxen можно получить, обратившись по адресу
•
• Zeus. Большинство Web-серверов, предназначенных для работы в системе Linux, бесплатно распространяются в исходных кодах, но Zeus является исключением. Это коммерческий продукт; его цена составляет 1700 долларов. Согласно информации, опубликованной на Web-узле Zeus (
• Web-серверы на базе ядра. Существуют Web-серверы, которые выполняются как процессы ядра Linux. Дело в том, что действия по предоставлению Web-страниц пользователям в основном сводятся к обращению к дискам и обмену данными через сетевое соединение. Большинство подобных задач могут решаться непосредственно ядром системы, причем выполняются они гораздо эффективнее, чем это происходит при использовании внешних программ. Подобные серверы будут подробно рассмотрены ниже.
• Нетрадиционные серверы. Некоторые программы используют протокол HTTP для выполнения специальных действий, не поддерживаемых обычными Web-серверами. Например, инструменты удаленного администрирования, которые рассматривались в главе 16, формально могут считаться Web-серверами. Взаимодействие с ними можно организовать посредством обычных Web-броузеров, но они принимают обращения от клиентов через порт, отличный от порта 80. Подобные серверы в данной главе рассматриваться не будут.
Если вам необходимо обеспечить выполнение специфических функций, ознакомьтесь с возможностями различных серверов. На сегодняшний день существует так много продуктов, поддерживающих протокол HTTP, что вы почти наверняка найдете подходящую для вас программу.
Как правило, требованиям большинства администраторов вполне удовлетворяет сервер Apache, поставляемый в комплекте со всеми версиями Linux. Если по каким-то причинам вам необходимо минимизировать объем памяти, занимаемый сервером, рассмотрите возможность использования сервера
Если вам необходим максимально производительный сервер, это обеспечит сервер, использующий функции ядра, например kHTTPd. Этот продукт позволяет обработать больше запросов, не увеличивая объем ресурсов компьютера. Повысить эффективность обработки запросов позволяют также серверы