Самоучитель по PHP 4
.pdfПриложение 1. Файл конфигурации Apache httpd.conf |
511 |
#Внимание: В определении имен файлов вы должны использовать прямые слэши
#вместо обратных (т. е. c:/apache вместо c:\apache). Если не указано
#имя диска, по умолчанию будет выбран диск, на котором размещен
#Apache.exe; тем не менее, во избежание путаницы, рекомендуется, чтобы
#вы всегда явно указывали в абсолютных путях имя диска.
#
### Раздел 1: Глобальное окружение
#
#Директивы в этом разделе определяют общие параметры Apache, такие как,
#например, число запросов, которое он может обрабатывать одновременно,
#или где ему искать свои файлы конфигурации.
#
#Директива ServerType может иметь значения inetd или standalone.
#Режим inetd поддерживается только на платформах Unix. ServerType standalone
#
#ServerRoot: вершина дерева каталогов, в которых содержатся файлы
#конфигурации, регистрации и отслеживания ошибок.
#
# В конце строки добавлять слэш не следует! ServerRoot "C:/Program Files/Apache Group/Apache"
#
#PidFile: Файл, куда сервер при запуске должен записывать свой
#идентификатор процесса.
PidFile logs/httpd.pid
#
#ScoreBoardFile: Учетный файл, предназначенный для хранения внутренней
#информации процесса сервера. Он необходим не для всех архитектур.
#Если для вашей он нужен (об этом можно судить по тому, будет ли создан
#такой файл, когда вы запустите Apache), то вы должны обеспечить, чтобы
#никакие два экземпляра процесса Apache не использовали один и тот же
#учетный файл.
ScoreBoardFile logs/apache_runtime_status
512 |
Часть VI. Приложения |
#
#В стандартной конфигурации сервер обработает при запуске файлы
#httpd.conf, srm.conf и access.conf (именно в таком порядке).
#Последние два файла в настоящее время поставляются пустыми, поскольку
#теперь рекомендуется для простоты, чтобы все директивы указывались в
#одном файле (httpd.conf).
#Закомментированные ниже значения встроены в сервер по умолчанию.
#Если вы используете другие имена файлов, отредактируйте и
#раскомментируйте "умолчальные". Если потребуется, чтобы сервер
#проигнорировал эти файлы, вы можете указать значения /dev/null (для
#Unix) или nul (для Win32).
#ResourceConfig conf/srm.conf #AccessConfig conf/access.conf
#
#Timeout: Время ожидания в секундах, прежде чем сервер примет или
#отправит сообщение о тайм-ауте.
Timeout 300
#
#KeepAlive: Признак, позволено или нет устанавливать долговременные
#соединения (persistent connections) (т.е. когда обрабатывается более
#одного запроса на соединение). Для запрета укажите значение Off. KeepAlive On
#
#MaxKeepAliveRequests: Максимальное число запросов, допустимое в одном
#долговременном соединении. Для снятия ограничений обнулите параметр,
#но для максимального быстродействия мы рекомендуем указать заведомо
#большое конкретное значение.
MaxKeepAliveRequests 100
#
#KeepAliveTimeout: Время ожидания в секундах следующего запроса от
#одного и того же клиента в одном подключении.
KeepAliveTimeout 15
#
# Для обработки запросов Apache для Win32 всегда порождает один дочерний
Приложение 1. Файл конфигурации Apache httpd.conf |
513 |
#процесс. Если он по каким-либо причинам будет преждевременно завершен,
#другой дочерний процесс создается автоматически. Поступающие запросы
#внутри такого дочернего процесса обрабатываются отдельными потоками.
#Следующие две директивы управляют поведением таких потоков и процессов.
#
#MaxRequestsPerChild: Число запросов, которое позволено обрабатывать
#дочернему процессу до переполнения. При переполнении дочерний процесс
#будет принудительно завершен, чтобы избежать проблем при длительной
#непрерывной работе, если Apache (или используемые им библиотеки),
#допускают утечку памяти или других ресурсов. На большинстве систем
#это не требуется, но некоторые (например, Solaris) имеют заметные
#утечки в библиотеках. Если нет других рекомендаций, для Win32
#установите значение 0 (без ограничений).
#
MaxRequestsPerChild 0
#
#ThreadsPerChild: Число одновременно выполняющихся потоков (т.е.
#запросов), которое допускает сервер. Установите это значение в
#соответствии с требуемой загрузкой сервера (больше активных запросов
#одновременно означает, что они обслуживаются медленнее) и объемом
#системных ресурсов, который вы можете предоставить серверу.
#
ThreadsPerChild 50
#
#Listen: Позволяет привязать Apache к конкретному адресу IP, и/или
#порту, в дополнение к порту, определенному по умолчанию. См. также
#директиву <VirtualHost>.
#
#Listen 3000
#Listen 12.34.56.78:80
#
#BindAddress: Этой опцией вы можете обеспечить поддержку виртуальных
#хостов. Данная директива используется для указания серверу адреса IP,
#который необходимо отслеживать. Она может содержать *, адрес IP или
#полное имя домена Интернета. См. также директивы <VirtualHost> и Listen.
514 |
Часть VI. Приложения |
#
#BindAddress *
#
#Поддержка динамически разделяемых объектов (DSO, Dynamic Shared Object)
#Для того чтобы иметь возможность использовать модуль, созданный как
#библиотека DSO, вам следует поместить в этом месте соответствующую
#строку LoadModuleТогда модуль будет доступен
#прежде обращения к нему.
#За детальными разъяснениями механизмов DSO вы можете обратиться к
#файлу README.DSO в дистрибутиве Apache 1.3, а также выполнить
#команду 'apache -l', чтобы получить список уже встроенных
#(статически скомпонованных и таким образом всегда доступных)
#модулей сервера Apache.
#
#Внимание: Порядок, в котором загружаются модули, имеет большое
#значение. Не меняйте нижеследующий порядок без консультации со
#специалистом.
#
#LoadModule anon_auth_module modules/ApacheModuleAuthAnon.dll #LoadModule dbm_auth_module modules/ApacheModuleAuthDBM.dll #LoadModule digest_auth_module modules/ApacheModuleAuthDigest.dll #LoadModule cern_meta_module modules/ApacheModuleCERNMeta.dll #LoadModule digest_module modules/ApacheModuleDigest.dll #LoadModule expires_module modules/ApacheModuleExpires.dll #LoadModule headers_module modules/ApacheModuleHeaders.dll #LoadModule proxy_module modules/ApacheModuleProxy.dll #LoadModule rewrite_module modules/ApacheModuleRewrite.dll #LoadModule speling_module modules/ApacheModuleSpeling.dll #LoadModule info_module modules/ApacheModuleInfo.dll
#LoadModule status_module modules/ApacheModuleStatus.dll #LoadModule usertrack_module modules/ApacheModuleUserTrack.dll
#
#Директива ExtendedStatus определяет, будет ли Apache генерировать
#детальную информацию о состоянии (ExtendedStatus On) или только
#общую информацию (ExtendedStatus Off) при обращении к функции
#server-status. Значение по умолчанию — Off.
Приложение 1. Файл конфигурации Apache httpd.conf |
515 |
#
#ExtendedStatus On
### Раздел 2: Конфигурация сервера по умолчанию
#
#Директивы этого раздела устанавливают значения, используемые "главным
#сервером", который отвечает на запросы, не обрабатываемые виртуальными
#хостами. Эти значения обусловливают также установки по умолчанию для
#любых контейнеров <VirtualHost>, которые вы будете определять
#здесь далее.
#
#Любые из директив раздела могут быть включены в контейнер
#<VirtualHost>; в таком случае установки по умолчанию будут
#переопределены ими для этого виртуального хоста.
#
#
#Если в директиве ServerType (установленной ранее в разделе "Глобальное
#окружение") задано значение inetd, следующие несколько директив не
#имеют никакого эффекта, поскольку их значение определено конфигурацией
#inetd. Переходите к директиве ServerAdmin.
#
# Port: Номер порта, к которому подключен сервер.
#
Port 80
#
#ServerAdmin: Ваш адрес, по которому следует направлять сообщения о
#проблемах с сервером. Этот адрес появится на некоторых сгенерированных
#сервером страницах, таких, как сообщения об ошибках.
#
ServerAdmin you@your.address
#
#Директива ServerName задает имя хоста, возвращаемое клиенту, если это
#имя отличается от того имени, которое получила программа (например,
#используйте www вместо реального имени хоста).
516 |
Часть VI. Приложения |
#
#Внимание: Вы не можете просто выдумывать имена хостов в надежде, что
#это сработает. Имя, которое вы определяете здесь, должно быть
#действительным именем DNS для вашего хоста. В случае затруднений с
#пониманием изложенного справьтесь у
#администратора сети.
#Если ваш хост не имеет зарегистрированного имени DNS, вы можете указать
#здесь его адрес IP. В таком случае вам придется обращаться к хосту по
#адресу (например, http://123.45.67.89/) и это может сильно осложнить
#переадресацию ресурсов.
#
ServerName localhost
#
#DocumentRoot: Каталог, в котором будут находиться ваши документы (т.е.
#Web-страницы). По умолчанию, все запросы выбираются из этого каталога;
#для указания же других мест могут использоваться символические ссылки
#(links) и псевдонимы (aliases).
#
DocumentRoot "z:/home/localhost/www"
#
#Каждый каталог, к которому Apache имеет доступ, может быть
#сконфигурирован в отношении свойств и сервисов, которые могут быть
#разрешены и/или запрещены в этом каталоге (и его подкаталогах).
#
# Сначала мы определяем свойства "по умолчанию".
#
<Directory z:/>
Options Indexes Includes AllowOverride All
allow from all </Directory>
#
#Обратите внимание, что с этого места и далее вы должны явным образом
#указывать свойства, которые могут быть разрешены, — так что, если чтото
#не работает так, как вы ожидаете, сначала убедитесь, что вы разрешили
Приложение 1. Файл конфигурации Apache httpd.conf |
517 |
#это свойство ниже.
#Здесь должен быть указан каталог, который вы установили как
#DocumentRoot.
#
#<Directory "z:/home/localhost/www">;
#
#Опции могут иметь значения None, All или любую комбинацию из
#Indexes, Includes, FollowSymLinks, ExecCGI или MultiViews.
#Заметьте, что MultiViews должен быть указан отдельно —
#Options All для этого не достаточно.
#
# Options Indexes FollowSymLinks MultiViews
#
#Директива перечисляет опции, которые могут быть переопределены в
#файлах .htaccess. Значением может быть All или любая комбинация из
#Options, FileInfo, AuthConfig и Limit.
#
# AllowOverride None
#
#Эти директивы определяют, какие пользователи имеют доступ к информации,
#расположенной на этом сервере.
#
#Order allow,deny
#Allow from all #</Directory>
#
#UserDir: Название каталога, которое прибавляется к именам
#пользовательских домашних каталогов при получении запроса ~user
#(например, http://www.server.com/~username).
#
#Под Win32 мы в настоящее время не пытались устанавливать каталог
#регистрации пользователя, поэтому приходится работать с форматом,
#приведенным ниже.
518 |
Часть VI. Приложения |
#
<IfModule mod_userdir.c>
UserDir "C:/Program Files/Apache Group/Apache/users/" </IfModule>
#
#DirectoryIndex: Имя файла (или файлов), используемое в качестве
#предопределенной страницы-указателя или оглавления. Если вы указываете
#несколько имен, разделяйте их пробелами.
#
<IfModule mod_dir.c>
DirectoryIndex index.htm index.html </IfModule>
#
#AccessFileName: Имя файла, который сервер ищет в каждом каталоге для
#определения прав доступа.
#
AccessFileName .htaccess
#
#Следующие строки предотвращают доступ к файлам .htaccess со стороны
#Web-клиентов. Поскольку файлы .htaccess нередко содержат информацию об
#аутентификации, доступ к ним запрещен из соображений безопасности. Вы
#можете удалить эти строки (или поставить символ комментария),
#если допускаете, чтобы посетители могли просматривать содержимое файлов
#.htaccess из Web. Если вы поменяете значение директивы AccessFileName
#выше, не забудьте внести и сюда соответствующие изменения.
#
<Files ~ "^\.ht"> Order allow,deny Deny from all
</Files>
#
#CacheNegotiatedDocs: По умолчанию с каждым документом Apache отправляет
#инструкцию "Pragma: no-cache", что является указанием proxy-серверам не
#кэшировать данный документ. Если раскрыть следующую строку, то
#поведение proxy-серверов изменится и им будет разрешено кэшировать
Приложение 1. Файл конфигурации Apache httpd.conf |
519 |
# документы.
#
#CacheNegotiatedDocs
#
#UseCanonicalName: (Впервые в версии 1.3.) Если эта директива включена
#(On), то всякий раз, когда Apache требуется создать ссылку на самого
#себя (self-referencing URL, т.е. адрес сервера, с которого поступает
#ответ на запрос), для формирования "канонического имени" он будет
#использовать значения директив ServerName и Port, когда это возможно.
#Если директива выключена (Off), Apache будет по возможности
#использовать значения, предоставленные клиентом. Эта директива влияет
#также на значения переменных SERVER_NAME и SERVER_PORT в CGI-сценариях.
UseCanonicalName On
#
#Директива TypesConfig описывает расположение файла mime.types
#(или его эквивалента).
#
<IfModule mod_mime.c> TypesConfig conf/mime.types
</IfModule>
#
#Директива DefaultType определяет MIME-тип, который будет использоваться
#для какого-либо документа, если сервер не сможет определить его по иным
#признакам, например, по расширению имени файла. Если ваш сервер
#содержит по большей части тексты или HTML-документы, text/plain
#является приемлемым решением. Если большая часть содержимого является
#исполняемыми файлами или изображениями, вы можете поменять значение на
#application/octet-stream, чтобы предотвратить попытку браузера
#показать содержимое двоичного файла.
#
DefaultType text/plain
#
#Модуль mod_mime_magic позволяет серверу использовать разнообразные
#приемы определения типа файла по его содержимому. Директива
520 |
Часть VI. Приложения |
#MIMEMagicFile указывает ему файл, где даны описания таких приемов.
#По умолчанию mod_mime_magic не включен в состав сервера (вы должны
#загрузить его сами с помощью директивы LoadModule — см. абзац DSO в
#разделе "Глобальное окружение", или заново откомпилировать сервер
#с этим модулем), поэтому директива MIMEMagicFile заключена в контейнер
#<IfModule>. Это означает, что она будет обработана только в том случае,
#если модуль mod_mime_magic уже загружен.
#
<IfModule mod_mime_magic.c> MIMEMagicFile conf/magic
</IfModule>
#
#Директива HostnameLookups определяет, регистрировать ли клиентов по
#именам, или только по адресам IP, т.е. www.apache.org (On) или
#204.62.129.132 (Off). По умолчанию — Off, поскольку для снижения
#нагрузки на сеть было бы лучше, если бы вы использовали эту
#возможность, зная о последствиях, т. к. отслеживание по именам означает,
#что каждый клиентский запрос приведет как минимум к еще одному запросу
#к серверу имен для преобразования IP-адреса в имя.
#
HostnameLookups Off
#
#ErrorLog: Расположение файла регистрации ошибок. Если вы не определяете
#директиву ErrorLog внутри контейнера <VirtualHost>, сообщения об
#ошибках, возникших при работе этого хоста, будут записаны в указанный
#ниже файл. В противном случае все сообщения направятся в специфичный
#для виртуального хоста журнал.
#
ErrorLog logs/error.log
#
#LogLevel: Определение характера ошибок, которые записываются в
#error.log. Возможные значения в порядке убывания количества сообщений:
#debug, info, notice, warn, error, crit, alert, emerg.
#