Конфигурирование Apache

Конфигурирование Apache

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

По умолчанию настройки Apache расположены в файле «httpd.conf» в каталоге «conf«.

Далее будут описаны основные директивы конфигурационного файла «httpd.conf» и их общеупотребительные значения.

Следует обратить особое внимание на путь к файлам в конфигурационных файлах Apache и РНР. Вам часто придется указывать пути к различным каталогов и файлов. В операционных системах UNIX и Windows применяются различные разделители каталогов. В UNIX используется прямая косая черта (/) в Windows — обратная (\). В некоторых директивах Apache и РНР работают оба вида разделителей каталогов. Но поскольку Apache и РНР изначально разрабатывались под UNIX, то, применяя их «родной» формат, вы сможете избежать ряда проблем. Поэтому пути в конфигурационных файлах «httpd.conf» и «php.ini» рекомендуется писать через слеш в формате UNIX — «/».

К примеру:

ScriptAlias "/php_dir/" "c:/php/"

Директивы файла httpd.conf:

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

Port 80

Единственная причина установления нестандартного порта — это отсутствие прав на использование стандартного порта. При использовании нестандартного порта, например, 8080, номер порта следует указывать в адресе «http://localhost:8080/«.

ServerAdmin — содержит заданный адрес электронной почты администратора Web-сервера. Именно этот адрес будет отображаться при ошибках работы сервера.

ServerAdmin mail@gmail.com

ServerName — содержит заданное имя компьютера для сервера.

ServerName localhost:80

ServerRoot — указывает на каталог, содержащий файлы Web-сервера Apache.

ServerRoot "C:/web_server/apache"

DocumentRoot — определяет каталог, в котором расположены файлы Web-сайта.

DocumentRoot "C:/web_server/apache/htdocs"

Контейнер <Directory/>

Сфера действия директив внутри этого контейнера распространяется на все файлы и подкаталоги внутри каталога, заданного в директиве DocumentRoot.

<Directory C:/>
 Options FollowSymLinks Includes Indexes
 AllowOverride All
</Directory>

Директива AllowOverride установлена ​​в значение ALL, позволяет переопределять значение главного конфигурационного файла «httpd.conf» в файлах «.htaccess«.

Директива Options FollowSymLinks позволяет Apache следовать символическим ссылке.

Директива Options Includes позволяет выполнение директив SSI (Server Side Includes, включения на стороне сервера) в коде страниц Web-сайта.

Директива Options indexes указывает, что нужно возвращать содержимое каталога, если отсутствует индексный файл.

DirectoryIndex — содержит заданный список индексных файлов, которые следует отображать при обращении в каталог без указания имени файла.

DirectoryIndex index.html index.htm index.php

Директива ScriptAlias ​​используется для создания псевдонима каталога «/cgi-bin/«, в котором располагаются программы и сценарии CGI.

ScriptAlias /cgi-bin/ "C:/web_server/apache/cgi-bin/"

Далее необходимо настроить права и ограничения на каталог cgi-bin.

<Directory "C:/web_server/apache/cgi-bin">
AllowOverride None
Options ExecCGI
Order allow, deny
Allow from all
</Directory>

Данное действие необходимо для гарантии, что опции каталога не будут изменены, так как это может создать проблемы безопасности.

Директива AllowOverride None говорит о том, что опции этого каталога не могут быть переопределены файлами «.htaccess«.

Директива Options ExecCGI позволяет выполнение CGI-сценариев.

Директивы order allow, deny и Allow from all разрешают доступ к каталогу.

AddHandler — заставляет Apache рассматривать файлы с расширениями «ехе» и «bat«, как CGI — скрипты.

AddHandler cgi-script .bat .exe

DefaultType устанавливает заголовок файлов, тип которых не может быть определен по расширению. В данном случае все неизвестные файлы воспринимаются как обычные текстовые файлы. Для того чтобы все неизвестные расширения файлов обрабатывать, как HTML, измените директиву следующим образом:

DefaultType text/html

AddDefaultCharset — устанавливает кодировку по умолчанию, если кодировка не задана в заголовке HTML-документа.

AddDefaultCharset windows-1251
Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *