Чтение онлайн

ЖАНРЫ

Сетевые средства Linux

Смит Родерик В.

Шрифт:
Совет

Если вы хотите, чтобы сервер принимал обращения только с локального компьютера, вам надо задать опцию

BindAddress 127.0.0.1
. При этом взаимодействие с другими компьютерами поддерживаться не будет. Для обращения к локальному серверу можно использовать URL
http://127.0.0.1
или
http://localhost
.

• 

Port
. Данная директива указывает Apache, какой порт должен использоваться для взаимодействия с клиентами. По умолчанию принимается номер порта 80.

• 

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

• 

ServerName
. Если значение данной директивы отличается от имени вашего компьютера, вы можете устранить это несоответствие, указав правильное значение.

• 

DefaultType
. Если Apache не может определить MIME-тип данных ни на основании расширения файла, ни с помощью "магической" последовательности, он возвращает MIME-тип, указанный в качестве значения данной директивы. Обычно это
text/plain
, но при необходимости вы можете задать другое значение. Изменять
DefaultType
имеет смысл в том случае, если на Web-узле находится много файлов, содержащих данные определенного типа, и есть опасность, что MIME-тип некоторых файлов не будет распознан.

• 

HostnameLookups
. Данная директива может принимать значение
On
или
Off
. Если задано значение
On
, Apache будет преобразовывать адреса клиентов, обращающихся к серверу, в доменные имена и записывать их в файл протокола. Это упрощает анализ информации, содержащейся в файле. Однако преобразование адреса занимает дополнительное время и сетевые ресурсы, поэтому системные администраторы часто отказываются от такой возможности.

• 

LogLevel
. Сервер Apache записывает информацию о своих действиях в файл протокола. Объем этой информации вы можете указывать, задавая значение
debug
,
info
,
notice
,
warn
,
error
,
crit
,
alert
или
emerg
директивы
LogLevel
. (Здесь значения директивы перечислены в порядке убывания объема данных, записываемых в файл протокола.) По умолчанию используется значение
warn
.

• 

CustomLog
. Для данной директивы задаются два значения: имя файла протокола и формат информации, записываемой в этот файл. В данном случае речь идет о файле протокола, в который помещаются сведения о клиентах, обращающихся к серверу за получением Web-страниц. Формат может быть задан с помощью ключевых слов
common
,
agent
,
referer
и
combined
. Для обеспечения большей степени гибкости в конфигурационном файле
httpd.conf
предусмотрены средства, позволяющие администратору определить собственный формат записи данных. Чтобы создать несколько файлов протоколов, надо включить в конфигурационный файл несколько директив
CustomLog
.

Помимо опций общего назначения, описанных выше, в файле

httpd.conf
содержатся также дополнительные опции. Многие из них не будут рассматриваться в данной книге. Если вам потребуется более подробная информация о настройке сервера, обратитесь к документации по Apache или к книгам, посвященным данному продукту.

Описание каталогов

В состав URL входит от двух до четырех компонентов.

• Протокол. Первый компонент URL (например,

http://
или
ftp://
) определяет протокол, используемый для взаимодействия. В данной главе в основном обсуждаются серверы, поддерживающие протокол HTTP (в этом случае начинается с символов
http://
). Для обращения к защищенным узлам используются URL, начинающиеся с
https://
.

• Имя

узла
. Имя узла, входящее в состав URL, представляет собой доменное имя компьютера, на котором выполняется Web-сервер. Например, в URL
http://www.threeroomco.com/thepage/index.html
именем узла является
www.threeroomco.com
. (Одному компьютеру может соответствовать несколько доменных имен. Такая ситуация возникает в том случае, если в конфигурационном файле сервера DNS для этого компьютера задано несколько записей
А
или
CNAME
. (Настройка сервера DNS описывались в главе 18).

• Имя файла. В большинстве случаев HTTP-запрос предполагает передачу файла. В составе URL за именем узла следует имя файла (с указанием имени каталога). Например, в URL

http://www.threeroomco.com/thepage/index.html
ссылкой на файл является компонент
thepage/index.html
. Несмотря на то что имя файла отделяется от имени узла косой чертой, этот символ не является обозначением корневого каталога системы Linux. Путь к файлу начинается от корневого каталога документов, определенного для Web-узла. Если имя файла в составе URL не указано, сервер возвращает клиенту Web-страницу по умолчанию, заданную с помощью директивы
DirectoryIndex
.

• Дополнительная информация. Некоторые URL содержат дополнительную информацию. Например, позиции в составе Web-документа может быть присвоено имя. Это имя указывается в URL после имени файла и отделяется от него символом

#
. URL, в начале которого указан протокол FTP, может содержать пользовательское имя и пароль.

В конфигурационном файле Apache содержится несколько опций, которые позволяют указывать каталоги для хранения файлов, предназначенных для обработки Web-сервером. Если вы некорректно зададите значения этих опций, некоторые из Web-страниц станут не доступны. Директивы, описывающие каталоги, перечислены ниже.

• 

ServerRoot
. С помощью этой директивы задается корень поддерева файловой системы, используемого для хранения двоичных файлов Apache. В большинстве случаев при инсталляции сервера устанавливается значение
"/usr"
этой опции. Изменять его не следует.

• 

DocumentRoot
. В каталоге, указанном с помощью этой директивы, хранятся файлы, содержащие статические Web-страницы. По умолчанию для данной опции задается
"/home/httpd/html"
или другое подобное значение. (В файле
httpd.conf
имя каталога обычно помещается в кавычки.)

Внимание

Значение директивы

DocumentRoot
не следует завершать косой чертой. Несмотря на то что в системе Linux такая ссылка на каталог является корректной, для Apache она приведет к возникновению ошибки.

• 

UserDir
. Если первый из каталогов, предшествующих имени файла в составе URL, начинается с символа
~
, Apache интерпретирует его имя как имя пользователя и старается найти файл в рабочем каталоге соответствующего пользователя. Директива
UserDir
указывает имя подкаталога, в котором следует искать файл. Предположим, что для данной директивы задано значение
public_html
и удаленный пользователь ввел в поле адреса броузера URL
http://www.threeroomco.compilation/~abrown/photos.html
. Тогда Apache попытается вернуть пользователю файл
photos.html
, расположенный в подкаталоге
public_html
рабочего каталога пользователя
abrown
. Если задано значение
disabled
данной директивы, обращение к файлам, находящимся в рабочих каталогах пользователей, запрещено. Если вы хотите запретить доступ лишь к части пользовательских каталогов, вам надо после ключевого слова
disabled
указать имена пользователей, рабочие каталоги которых закрыты для обращения. Данная директива часто помещается в состав директивы
<IfModule>
, которая проверяет, загружен ли модуль Apache, предназначенный для поддержки пользовательских каталогов. (Модули Apache будут рассматриваться в следующем разделе.)

Поделиться с друзьями: