Процедура установки сервера NCSA

Процедура установки сервера NCSA. Для запуска процедуры сборки и установки сервера необходимо в корневом каталоге сервера, описанном в предыдущем параграфе, запустить утилиту make. Для сборки сервера необходимо указать команде make аббревиатуру операционной системы aix3, aix4, sunos, sgi4, sgi5, hp-cc, hp-gcc, solaris, netbsd, svr4, linux, next, ultrix, osf1, aux, bsdi. Полный список поддерживаемых систем можно получить, выполнив команду make без параметров.

Каждая аббревиатура ассоциирована с конкретной операционной системой.

Появление дополнительных параметров после дефиса указывает на специфику конкретной конфигурации в одной и той же ОС. Например, hp-cc и hp-gcc указывают на общий тип ОС - HP-UX, однако ориентированы на использование разных компиляторов - базового C - компилятора cc или GNU C gcc. Для сборки сервера под ОС UnixWare необходимо использовать команду make svr4. Ряд основных параметров сервера - пути файлов, режимы работы задаются по умолчанию на этапе сборки.

В случае, если нужна их корректировка под конкретные условия, необходимо отредактировать файл src config. h. После сборки сервера необходимо разместить его компоненты в файловой системе.

Исполняемый модуль сервера httpd размещается в каталоге серверных программ - usr local sbin или usr sbin. Файлы конфигурации, журналы и стандартные cgi-программы размещаются в подкаталогах каталога, определяемого параметром ServerRoot. Обычно это usr local etc httpd, однако его можно изменить либо изменив параметр HTTPD ROOT файла src config.h, либо указав ключ -d при запуске сервера. Например usr local sbin httpd -d var httpd В каталоге, определяемом параметром ServerRoot, размещаются три подкаталога conf - содержащий файлы конфигурации сервера logs - содержащий журналы работы сервера cgi-bin - содержащий стандартные cgi-программы, поставляемые с сервером. 3.3.4 Конфигурационные файлы.

Режимы работы сервераГлавный файл конфигурации ГКФ сервера содержит все параметры, необходимые серверу для начала работы, а также пути других конфигурационных файлов.

По умолчанию, главный файл конфигурации сервера находится в подкаталоге conf каталога и имеет имя httpd.conf. При запуске серверу можно указать другой путь, используя ключ -f. Например usr local sbin httpd -f etc httpd.config Ниже приведены параметры, указываемые в главном файле конфигурации сервера, с необходимыми пояснениями. Значения параметров отделяются от названия одним или несколькими пробелами или табуляциями. Если одному параметру соответствуют несколько значений, они разделяются запятыми.

Параметры запуска серверных процессов 1. ServerType Определяет способ запуска сервера ServerType inetd серверный процесс запускается в ответ на каждое обращение клиента через механизм inetd. После обработки запроса, сервер прекращает свою работу. ServerType standalone серверный процесс запускается один раз и находится в состоянии ожидания запросов клиентов. После обработки запроса, сервер остается запущенным. 2. Port Определяет порт tcp, по которому сервер принимает запросы клиентов.

Этот параметр используется только для сервера типа standalone. При механизме старта inetd порт определяется конфигурационным файлом сервера inetd - inetd.conf. Стандартный порт для WWW - сервера - 80. Пример Port 80 3. StartServers и MaxServers Для режима standalone определяют количество процессов сервера при многопоточной обработке. StartServers - указывает число процессов сервера, создаваемых при запуске httpd. MaxServers определяет максимальное число одновременно работающих процессов сервера.

Пример StartServers 3 MaxServers 5 4. TimeOut Определяет время в секундах, которое серверный процесс, запущенный в режиме standalone, будет ожидать повторного обращения клиента. По умолчанию используется 1200 секунд. Пример TimeOut 3600 5. User и Group Определяют имя пользователя и группу, права которого получает сервер при запуске в режиме standalone. Изменение прав сервера производится с целью предотвращения доступа WWW - клиентов к файлам операционной системы, не являющимися общедоступными.

Например User nobody Group nobody Информационные параметры для WWW - клиентов 1. ServerName Определяет имя сервера, которое пересылается клиенту вместе с другими параметрами запроса. Используется в случае, если сервер имеет несколько имен синонимов. Например ServerName Indy.cnit.nsu.ru 2. ServerAdmin Определяет адрес электронной почты администратора сервера. При возникновении каких - либо ошибок в работе сервера, он выдает клиенту сообщение с просьбой проинформировать о них администратора сервера по указанному Email. Например ServerAdmin fancy nsu.ru Расположение необходимых файлов и каталогов 1. 2. ServerRoot Определяет местоположение каталога ServerRoot. По умолчанию, это usr local etc httpd или измененное значение параметра HTTPD ROOT файла src config.h. Например ServerRoot var httpd 3. ErrorLog Определяет местоположение файла - журнала ошибок, в который заносятся все сообщения об ошибках, возникающих в процессе работы сервера.

Если значение не начинается со slash, подразумевается путь относительно ServerRoot. Например ErrorLog logs errlog Журналом ошибок является файл var httpd logs errlog 4. TransferLog Определяет местоположение файла - журнала доступа, в который заносятся данные обо всех передачах данных между WWW - клиентом и WWW - сервером.

Если значение не начинается со slash, подразумевается путь относительно ServerRoot. Например TransferLog logs translog Журналом доступа является файл var httpd logs translog 5. AgentLog Определяет местоположение файла - журнала клиентов, в который заносятся данные о программном обеспечении, используемом WWW клиентами при доступе к данному серверу. Если значение не начинается со slash, подразумевается путь относительно ServerRoot. Например TransferLog logs agentlog Журналом клиентского программного обеспечения является файл var httpd logs agentlog 6. RefererLog Определяет местоположение файла в который записываются все факты обращений к данным сервера в виде ссылок от клиентов к данным.

Если значение не начинается со slash, подразумевается путь относительно ServerRoot. Например RefererLog logs reflog Журналом ссылок является файл var httpd logs reflog 7. PidFile Определяет местоположение файла, хранящего номер процесса запущенного WWW - сервера.

Используется для остановки работы сервера путем посылки сигнала командой kill. Если значение не начинается со slash, подразумевается путь относительно ServerRoot. Например PidFile logs httpd.pid Номер процесса - сервера записывается при старте в файл var httpd logs httpd.pid 8. AccessConfig Определяет местоположение файла управления доступом.

Если значение не начинается со slash, подразумевается путь относительно ServerRoot. Например AccessConfig conf access.conf 9. TypesConfig Определяет местоположение файла, содержащего список соответствий расширений файлов ОС типам MIME. По умолчанию используется файл conf mime.types в каталоге, определяемом ServerRoot. Если не начинается с backslash, подразумевается путь относительно ServerRoot. Например TypesConfig etc mime.types 10. CoreDirectory Определяет местоположение каталога, в который записывается файл дампа памяти при возникновении сбоя. Например CoreDirectory tmp Параметры протоколирования 1. LogOptions Определяет, будут ли несколько протоколов записываться в один файл Combined или каждый будет записан в свой файл Separate. Например LogOptions Separate 2. RefererIgnore Определяет имена серверов, обращения от которых не будут протоколироваться.

Например RefererIgnore Indy.cnit.nsu.ru Другие режимы работы 1. DNSMode Определяет интенсивность обращений WWW сервера к серверу имен Интернет.

Minimum означает, что сервер будет обращаться к DNS только при необходимости проверить ограничения доступа по домену. Standard означает, что сервер будет обращаться к серверу имен каждый раз при обработке запроса клиента. Maximum означает, что сервер будет дважды обращаться к серверу имен при каждой обработке запроса.

Например DNSMode Standard Процедура определения конфигурации сервера После запуска основного серверного процесса сервер пытается открыть главный конфигурационный файл. Этот файл ищется по умолчанию в каталоге usr local etc http conf с именем httpd.conf. Умолчание можно изменить при сборке системы редактированием файла src config.h. За каталог отвечает параметр HTTPD ROOT, за имя файла - параметр SERVER CONFIG FILE. Изменить значения по умолчанию можно при запуске сервера, указав ключи -h и-f см. выше. Местоположение файлов конфигурации доступа, документов, типов MIME, а также файлов журналов сервер получает из главного конфигурационного файла.

Если каких - либо параметров там нет, их значения берутся по умолчанию см. src config.h. Конфигурация ресурсов Расположение файлов данных, их интерпретация сервером и поведение сервера при обращении к разным типам файлов определяются параметрами файла конфигурации ресурсов.

Ниже приведен список основных параметров с пояснениями. 1. DocumentRoot Определяет каталог локальной файловой системы, от которого начинается отсчет виртуального пути URL. Например DocumentRoot apply www 2. UserDir Определяет название публичного подкаталога пользователей. ПО WWW - сервера позволяет обеспечить внешний доступ к гипертекстовым документам пользователей базовой операционной системы. Для этого пользователям необходимо создать в своем домашнем каталоге подкаталог с именем, определяемым параметром UserDir. После этого все обращения по URL http имя сервера имя пользователя ОС будут транслироваться в реальный путь до подкаталога, определенного параметром UserDir в домашнем каталоге пользователя имя пользователя ОС . Например UserDir public html при этом при обращении по URL http www.nsu.ru fancy index.html сервер будет искать файл Index.html в подкаталоге public html домашнего каталога пользователя fancy. 3. Redirect Переадресует запрос к одной иерархии в запрос к другой иерархии, возможно расположенной на другом сервере.

Например Redirect HTTPd http hoohoo.ncsa.uiuc.edu 4. Alias Определяет синоним для документа или каталога на локальном сервере.

Пример Alias icons var opt images 5. ScriptAlias Определяет синоним для каталогов, содержащих CGI - программы. Пример ScriptAlias hrv-cgi var opt cgi 6. DirectoryIndex Определяет имена файлов, трактующихся сервером как индексные. Их содержимое выдается сервером при обращении к данному каталогу.

Пример DirectoryIndex index.html index.htm index.cgi 7. AccessFileName Определяет имя файла, трактующегося сервером как файл управления доступом см. раздел об управлении доступом. Пример AccessFileName .htaccess 3.3.5