Рейтинговые книги
Читем онлайн Linux: Полное руководство - Денис Колисниченко

Шрифт:

-
+

Интервал:

-
+

Закладка:

Сделать
1 ... 98 99 100 101 102 103 104 105 106 ... 158

ServerRoot /etc/httpd

# Следующая директива используется для компьютеров,

# которые имеют несколько IP-адресов. Обычно данная

# директива используется для конфигурирования

# виртуальных узлов.

#BindAddress *

# Прослушивать порт 80

Listen 80

# Директивы ErrorLog и TransferLog определяют расположение

# журналов сервера Apache. Обычно используется каталог

# /etc/httpd/logs, который является ссылкой на каталог

# /var/log/httpd или на любой другой.

ErrorLog logs/error_log

# LogLevel: устанавливает уровень протоколирования.

# Протоколируются предупреждающие сообщения сервера (warn)

# и ошибки. Если вы хотите протоколировать только ошибки,

# установите error

LogLevel warn

# Определяет формат файлов протокола, то есть информацию,

# которая будет протоколироваться. Обычно изменять эти

# значения не нужно.

LogFormat "%h %l %u %t "%r" %>s %b "%{Referer)i"

"%{User-Agent}i"" combined

LogFormat "%h %l %u %t "%r" %>s %b" common

LogFormat "%{Referer)i -> %U" referer

LogFormat "%{User-agent)i" agent

# Можно определить тип протокола

# Если вы хотите протоколировать общую информацию

#CustomLog logs/access_log common

# Если вы хотите протоколировать referer

#CustomLog logs/referer_log referer

# Если вы хотите протоколировать название пользовательских

# агентов (браузеров)

#CustomLog logs/agent_log agent

# По умолчанию используется комбинированный тип

# протоколирования, то есть

# будет протоколироваться вся информация

CustomLog logs/access_log combined

# С помощью директивы PidFile указывается имя файла, в

# котором исходный

# процесс сервера будет регистрироваться.

PidFile /var/run/httpd.pid

# ScoreBoardFile: Этот файл используется для сохранения

# внутренней информации процесса сервера.

ScoreBoardFile /etc/httpd/httpd.scoreboard

# Директива LockFile определяет файл блокировки, который

# используется сервером. Сервер должен быть скомпилирован

# с опцией

# USE_FCNTL_SERIALIZED_ACCEPT или

# USE_FLOCK_SERIALIZED_ACCEPT. Файл блокировки должен быть

# сохранен НА ЛОКАЛЬНОМ ДИСКЕ.

#

LockFile /etc/httpd /httpd.lock

ServerName new.host.name

# Директива UseCanonicalName появилась в версии

# Apache 1.3. Она разрешает

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

UseCanonicalName on

# Следующая директива позволяет прокси-серверу, например

# SQUID, не кэшировать документы, которые не генерируются

# автоматически, то есть в процессе выполнения различных

# сценариев.

CacheNegotiatedDocs

# Директива Timeout задает промежуток времени в секундах,

# в течение которого сервер продолжает попытки

# возобновления приостановленной передачи данных.

# Значение директивы Timeout распространяется не только

# на передачу, но и на прием данных.

Timeout 300

# Директива KeepAlive разрешает постоянные соединения,

# то есть такие соединения, в которых производится более

# одного запроса за один раз.

KeepAlive off

# MaxKeepAliveRequests: Максимальное количество запросов,

# разрешенное в течение постоянного соединения. Установите

# 0 для снятия ограничения.

MaxKeepAliveRequests 100

# Директива KeepAliveTimeout определяет тайм-аут для

# постоянного соединения.

KeepAliveTimeout 15

# Минимальное и максимальное число серверов в очереди

MinSpareServers 8

MaxSpareServers 20

StartServers 10

# Ограничивает общее количество клиентов. Когда это число

# будет превышено, новые клиенты получат отказ, поэтому это

# число не должно быть слишком маленьким.

MaxClients 150

# После обработки определенного количества запросов,

# указанного в директиве MaxRequestsPerChild, копия

# сервера завершается, а вместо нее запускается новая.

MaxRequestsPerChild 500

# Директивы конфигурации прокси-сервера

# ProxyRequests On

# Для включения кэширования раскомментируйте строки ниже:

#CacheRoot /var/cache/httpd

#CacheSize 5

#CacheGcInterval 4

#CacheMaxExpire 24

#CacheLastModifiedFactor 0.1

#CacheDefaultExpire 1

#NoCache a_domain.com another_domain.edu joes.garage_sale.com

####################################

# Настройки производительности SGI #

####################################

#

#Для использования этой функции раскомментируйте модуль

# mod_mmap_static в разделе описания модулей.

<IfModule mod_mmap_static.c>

 QSC on

</IfModule>

# Если вы хотите использовать буферизированное

# протоколирование, раскомментируйте модуль

# mod_log_config_buffered в разделе описания модулей.

# Для использования карты памяти раскомментируйте эту строку:

#mmapfile /var/www/html/file_to_map_in_memory

#

# Если вы хотите настроить процессы-потомки, пожалуйста,

# прочитайте документацию на вашем сервере

# http://localhost/manual/misc/perf-mja.html.

# Эта страница объясняет, как привязать определенный

# IP-адрес или порт к другому процессору.

#SingleListen On

###############################

# Виртуальные серверы #

###############################

#

# Поддержка модуля perl

# Замечание: не удаляйте расположенные далее строки,

# иначе это может разрушить вашу конфигурацию.

<IfDefine PERLPROXIED>

 ProxyPass /perl/ http://127.0.0.1:8200/

 ProxyPassReverse /perl/ http://127.0.0.1:8200/

</IfDefine>

# Файл, в котором находятся директивы конфигурирования

# виртуальных узлов.

Include conf/vhosts/Vhosts.conf

#

# Для поддержки динамических виртуальных узлов и

# виртуальных домашних каталогов, раскомментируйте

# следующие строки:

#LoadModule vhost_аlias_modulеmodulеs/mod_vhost_alias.so

#AddModule mod_vhost_alias.c

#Include conf/vhosts/DynamicVhosts.conf

#Include conf/vhosts/VirtualHomePages.conf

# Директивы конфигурирования PHP

Include conf/addon-modules/php.conf

16.12. Перекодирование русскоязычных документов «на лету»

С тех пор, когда в русском языке появилось слово «кодировка», появилась и проблема перекодировки. Стандартной кодировкой русского языка для большинства UNIX-серверов является КОИ8-R. Для применения в DOS компания Microsoft разработала альтернативную кодировку (ALT), известную также под названием CP-866.

Потом та же Microsoft создала кодировку Windows-1251 (ANSI), чем обеспечила проблемы с перекодировкой уже на локальном уровне: файлы, созданные в DOS, без предварительного перекодирования нельзя было прочитать в Windows, и наоборот. Заметьте, об Интернете и Apache я еще не сказал ни слова.

Кроме Microsoft, «облегчили» нам жизнь также компании Apple и Sun, разработав соответственно кодировки Apple и ISO8859-5. Компания IBM не отстала от них, разработав собственную кодировку русского языка.

В Интернете все эти кодировки смешались. Возникает задача: настроить автоматическое перекодирование документов из одной кодировки в другую. Для начала необходимо настроить хотя бы перекодирование «на лету» из KOI8 в Windows-1251, так как большинство клиентов в Сети используют именно эту кодировку (от Windows, как от смерти, не уйдешь).

16.12.1. Russian Apache: установка, настройка, использование

Обыкновенный англоязычный Apache, входящий в состав большинства дистрибутивов, не поможет вам решить эту проблему. Для корректных операций по перекодированию нужно загрузить и установить сервер Russian Apache или модуль Apache-RUS. Скачать как модуль, так и готовый сервер можно по адресу: ftp://apache.lexa.ru/pub/apache-rus. При этом старшая часть версии соответствует оригинальному серверу Apache, младшая — версии модуля Apache-Rus.

Рассматривать процесс установки и настройки я буду на примере не очень новой версии сервера — 1.3.3/PL27.3, это не принципиально. Последовательность действий для сборки сервера из исходных кодов стандартная:

1 ... 98 99 100 101 102 103 104 105 106 ... 158
На этой странице вы можете бесплатно читать книгу Linux: Полное руководство - Денис Колисниченко бесплатно.
Похожие на Linux: Полное руководство - Денис Колисниченко книги

Оставить комментарий