Заполнив поля Имя сервера (Server Name), Электронный адрес вебмастера (Webmaster email address) и Доступные адреса (Available Addresses), перейдите на вкладку Виртуальные узлы (Virtual Hosts) и нажмите кнопку Изменить параметры по умолчанию (Edit Default Settings). На экране появится окно, показанное на рисунке 25-3. Определите в этом окне параметры вашего веб-сервера по умолчанию. Если вы добавите виртуальный узел, параметры, определённые для этого виртуального узла будут иметь приоритет. Для параметров, не определенных в настройках этого виртуального узла, будут использоваться значения по умолчанию.
25.2.1. Настройка сайта
Значения по умолчанию параметров Список страниц, искомых в каталоге (Directory Page Search List) и Страницы ошибок (Error Pages) подходят для большинства серверов. Если вы не разобрались в этих установках — не изменяйте их.
Записи, перечисленные в области Список страниц, искомых в каталоге (Directory Page Search List), соответствуют указанию DirectoryIndex. DirectoryIndex — это страница по умолчанию, которую возвращает сервер, когда пользователь запрашивает содержимое каталога, указав косую черту (/) в конце имени каталога.
Например, когда пользователь запрашивает страничку this_directory, он получит либо страницу DirectoryIndex (если она существует), либо сформированный сервером список файлов в каталоге. Сервер попытается найти один из файлов, перечисленных в указании DirectoryIndex, и возвратит первый найденный. Если он не находит ни одного из этих файлов и параметр Options Indexes для запрашиваемого каталога установлен, сервер формирует и возвращает список содержащихся в нём файлов и каталогов в формате HTML.
Воспользуйтесь разделом Код ошибки (Error Code), чтобы в случае возникновения ошибки или проблемы HTTP-сервер Apache перенаправлял пользователя на локальный или внешний URL. Этот параметр соответствует указанию ErrorDocument. Если при попытке пользователя соединиться с HTTP-сервером Apache возникла проблема или ошибка, действием по умолчанию будет вывод короткого сообщения об ошибке, указанном в столбце Код ошибки (Error Code). Чтобы изменить это поведение по умолчанию, выберите код ошибки и нажмите кнопку Изменить (Edit). Выберите По умолчанию (Default), чтобы просмотреть короткое сообщение об ошибке по умолчанию. Выберите URL для перенаправления пользователя на внешний URL и введите его полностью, включая http://, в поле Местоположение (Location). Выберите Файл (File), чтобы перенаправить пользователя на внутренний URL и введите путь к файлу внутри корневого каталога документов веб-сервера. Путь к файлу должен начинаться с наклонной черты (/) и указываться относительно корневого каталога документов.
Например, чтобы перенаправить ошибку «404 Not Found» (документ не найден) на веб-страницу, созданную в файле с именем 404.html, скопируйте файл 404.html в DocumentRoot/../error/404.html. Здесь DocumentRoot — это определённый вами корневой каталог документов (Document Root) (по умолчанию — /var/www/html). Если в качестве размещения по умолчанию оставить корневой каталог документов, файл следует скопировать в /var/www/error/404.html. Затем выберите Файл (File) в качестве реакции на ошибку с кодом 404 - Not Found (не найдено) и введите /error/404.html в поле Местоположение (Location).
В меню Нижний колонтитул страницы сообщения об ошибке (Default Error Page Footer) вы можете выбрать один из следующих вариантов:
-
Показывать нижний колонтитул с электронным адресом (Show footer with email address) — В нижней части всех страниц с сообщением об ошибке будет выводиться нижний колонтитул по умолчанию, содержащий электронный адрес администратора веб-сайта, определённый указанием ServerAdmin. Обратитесь к разделу 25.3.1.1 Общие параметры за сведениями о настройке параметра ServerAdmin.
-
Показывать нижний колонтитул (Show footer) — В нижней части страницы будет выводиться только заданный нижний колонтитул по умолчанию.
-
Без нижнего колонтитула (No footer) — Нижний колонтитул не будет выводиться на страницах ошибок.
25.2.2. Ведение журнала
Вкладка Ведение журнала (Logging) используется для настройки параметров ведения журналов ошибок и передач данных.
По умолчанию сервер ведёт протокол передачи данных в файле /var/log/httpd/access_log, а протокол ошибок в /var/log/httpd/error_log.
Протокол передачи данных содержит список всех попыток обращения к веб-серверу. В нём фиксируется IP-адрес клиента, пытавшегося соединиться с сервером, дата и время этой попытки, а также имя файла на веб-сервере, к которому пытался обратиться клиент. Задайте полный путь и имя файла, в котором будет сохранена эта информация. Если полный путь и имя файла начинается не с косой черты (/), путь определяется относительно настроенного корневого каталога сервера. Этот параметр соответствует указанию TransferLog.
Вы можете определить особый формат протокола, установив флажок Установить шаблон журнала (Use custom logging facilities) и задав формат протокола в поле Шаблон журнала (Custom Log String). При этом будет определено указание LogFormat. За подробностями формата этого указания обратитесь к странице http://httpd.apache.org/docs-2.0/mod/mod_log_config.html#formats.
Протокол ошибок содержит список всех произошедших ошибок сервера. Задайте полный путь и имя файла, в котором будет сохранена эта информация. Если полный путь и имя файла начинается не с косой черты (/), путь определяется относительно настроенного корневого каталога сервера. Этот параметр соответствует указанию ErrorLog.
Используйте меню Уровень ведения журнала (Log Level) чтобы определить, насколько подробны будут сообщения об ошибках в протоколе. Этот параметр может принимать следующие значения (от наименее до наиболее подробного): emerg (аварийные ситуации), alert (тревожные ситуации), crit (критические), error (ошибки), warn (предупреждения), notice (уведомления), info or debug (информационные или отладочные сообщения). Этот параметр соответствует указанию LogLevel.
Значение, выбранное в меню Реверсивный поиск через DNS (Reverse DNS Lookup), определяет указание HostnameLookups. Выбрав Отключить реверсивный поиск (No Reverse Lookup), вы установите его значение равным «off». Выбрав Реверсивный поиск (Reverse Lookup), вы установите его значение равным «on». Выбрав Двойной реверсивный поиск (Double Reverse Lookup, вы установите значение «double».
Если вы выбрали Реверсивный поиск (Reverse Lookup), ваш сервер автоматически будет разрешать IP-адрес каждого соединения при запросе документа с веб-сервера. Разрешение IP-адресов означает, что сервер будет производить одно или несколько соединений с DNS, чтобы выяснить имя узла, соответствующее определенному IP-адресу.
Если вы выбрали Двойной реверсивный поиск (Double Reverse Lookup), ваш сервер будет выполнять двойной обратный поиск в DNS. Другими словами, для имени, полученного после обратного преобразования, будет выполнено прямое преобразование. По крайней мере один из IP-адресов при прямом преобразовании должен будет совпасть с адресом, обратное преобразование которого производилось.
Обычно вам следует установить этот параметр в значение Отключить реверсивный поиск (No Reverse Lookup), так как DNS-запросы дополнительно нагружают ваш сервер и могут снизить его производительность. Если ваш сервер загружен, влияние таких прямых и обратных преобразований может быть довольно заметным.
Обратные и двойные обратные преобразования также являются проблемой для Интернета в целом. Каждое отдельное соединение, устанавливаемое для поиска имени каждого узла, нагружает сеть. Поэтому, для выгоды вашего собственного Web сервера, а также всего Интернета, вам следует установить для этого параметра значение Отключить реверсивный поиск (No Reverse Lookup).
25.2.3. Переменные окружения
Вкладка Окружение (Environment) используется для настройки параметров, определяющих, передающих или сбрасывающих переменные сценариев CGI.
Иногда требуется изменить переменные окружения для сценариев CGI или страниц, включаемых на стороне сервера (Server-Side Include, SSI). HTTP-сервер Apache может использовать для настройки переменных окружения, передаваемых в сценарии CGI и страницы SSI, модуль mod_env. Указания для этого модуля и настраиваются на странице Переменные окружения (Environment Variables).
В разделе Установить для сценариев CGI (Set for CGI Scripts) задаются переменные окружения, передаваемые в сценарии CGI и страницы SSI . Например, чтобы для переменной окружения MAXNUM значение 50, нажмите кнопку Добавить (Add) в разделе Установить для сценария CGI (Set for CGI Script), показанном в разделе 25-5 и введите MAXNUM в текстовом поле Переменная окружения (Environment Variable) и 50 в текстовом поле Устанавливаемое значение (Value to set). Нажмите OK, чтобы добавить её в список. В разделе Установить для сценариев CGI (Set for CGI Scripts) настраивается указание SetEnv.
В разделе Передать сценариям CGI (Pass to CGI Scripts) определяются значения переменных окружения, передаваемые в сценарий при первом запуске сервера. Чтобы просмотреть переменные окружения, выполните в приглашении оболочки команду env. Нажмите кнопку Добавить (Add) в разделе Передать сценариям CGI (Pass to CGI Scripts) и введите в появившемся диалоговом окне имя переменной окружения. Нажмите OK, чтобы добавить её в список. В разделе Передать сценариям CGI (Pass to CGI Scripts) настраивается указание PassEnv.
Чтоб удалить переменную окружения, чтобы её значение не было передано в сценарий CGI и страницу SSI, воспользуйтесь разделом Сбросить для сценариев CGI (Unset for CGI Scripts). Нажмите кнопку Добавить (Add) в разделе Сбросить для сценариев CGI (Unset for CGI Scripts) и введите имя переменной окружения, которая должна быть сброшена. Нажмите OK, чтобы добавить её в список. Этому соответствует указание UnsetEnv.
Чтобы отредактировать переменную окружения, выберите её из списка и нажмите кнопку Изменить (Edit). Чтобы удалить запись из списка, выберите её и нажмите кнопку Удалить (Delete).
Чтобы узнать о переменных окружения HTTP-сервера Apache больше, обратитесь по следующему адресу:
http://httpd.apache.org/docs-2.0/env.html
25.2.4. Каталоги
Страница Каталог (Directories) на вкладке Быстродействие (Performance) настраиваются параметры определённых каталогов. Этой странице соответствует указание <Directory>.
Нажмите кнопку Изменить (Edit) в правом верхнем углу, чтобы определить Опции каталога по умолчанию (Default Directory Options) для всех каталогов, не указанных в списке Каталог (Directory), расположенном ниже. Выбранные вами параметры будут отражены в указании Options, включённом в указание <Directory>. Вы можете настроить следующие параметры:
-
ExecCGI — Выполнение сценариев CGI разрешено. Сценарии CGI не будут выполняться, если этот параметр не установлен.
-
FollowSymLinks — Переход по символьным ссылкам разрешён.
-
Includes — Использование включений (include) на стороне сервере разрешено.
-
IncludesNOEXEC — Использование включений (Include) разрешено, но команды #exec и #include в сценариях CGI запрещены.
-
Indexes — Если файл DirectoryIndex (например, index.html) в запрашиваемом каталоге не найден, результатом запроса будет форматированный список содержимого каталога.
-
Multiview — Поддержка множества видов страницы, в зависимости от её содержимого; этот параметр по умолчанию выключен.
-
SymLinksIfOwnerMatch — Переходить по символическим ссылкам, только если файл или каталог назначения имеет того же владельца, что и сама ссылка.
Чтобы задать параметры для определённых каталогов, нажмите кнопку Добавить (Add) рядом со списком Каталог (Directory). На экране появится окно, показанное на рисунке 25-7. В текстовом поле Каталог (Directory), в нижней части окна, введите имя каталога, параметры которого будут настроены. Выберите параметры в расположенном справа списке и настройте указание Order (Порядок) с помощью флажков, расположенных слева. Указание Order задаёт порядок, в котором обрабатываются разрешающие и запрешающие правила. В текстовых полях Список разрешений из файла (Allow hosts from) и Список запрещений из файла (Deny hosts from) вы можете указать следующее:
-
Разрешить всем узлам — Введите all(все) для разрешения доступа всем узлам.
-
Частичное имя домена — Разрешить доступ узлам, чьи имена совпадают с указанной строкой, или заканчиваются ей.
-
Точный IP-адрес — Разрешить доступ определенному IP-адресу.
-
Подсеть — Например, в виде 192.168.1.0/255.255.255.0
-
Определение сети CIDR — Например, 10.3.0.0/16
Если вы выберете Файлы .htaccess будут переопределять опции каталога (Let .htaccess files override directory options), указания в файле .htaccess будут иметь более высокий приоритет.