Httpd.conf — главный файл конфигурации сервера Apache, содержащий директивы, которые управляют работой сервера.
Различают несколько основных разделов группирования директив конфигурации:
— Директивы, управляющие процессом Apache в целом (глобальное окружение).
— Директивы, определяющие параметры «главного» сервера, или сервера «по умолчанию», который отвечает на запросы, которые не обрабатываются виртуальными хостами. Эти директивы определяют также настройки по умолчанию для остальных виртуальных хостов.
— Настройка виртуальных хостов, позволяющие обрабатывать запросы Web единственным сервером Apache, но направлять на различные IP адреса или имена хостов.
Файл Httpd.conf позволяет настроить функционирования сервера. После изменения данного файла в соответствии с вашими требованиями, можете запускать сервер.
Поскольку сервер Apache имеет большое число редко используемых опций, рассмотрим самые главные и наиболее полезные из них.
ServerAdmin
Директива ServerAdmin устанавливает адрес электронной почты, который сервер включает в любые сообщения об ошибках, которые он возвращает клиенту. ServerAdmin является единственной директивой, которая по умолчанию не имеет рабочего значения.
ServerAdmin admin@your-domain.com
ServerRoot
Директива ServerRoot отвечает за базовый каталог, в котором будет установлено программное обеспечение HTTP-сервера Apache.
ServerRoot "C:/web_server/apache"
ErrorLog
Директива ErrorLog задает местоположение журнального файла, в котором регистрируются ошибки сервера. Если имя файла не начинается с символа слеш (/), то путь к файлу устанавливается относительно ServerRoot.
ErrorLog "logs/error.log"
ErrorDocument
Директива ErrorDocument позволяет сопоставить кодам ошибок HTTP-сервера адреса URL. Этой возможностью можно пользоваться для более красивого визуального взаимодействия с пользователями.
ErrorDocument 404 /404.html
ServerName
Директива ServerName задает официальное имя вашего сервера в том виде, в котором оно появляется в строке URL. Это должно быть имя компьютера, зарегистрированное в системе имен серверов вашей организации или провайдера.
ServerName localhost:80
DefaultType
При запросе файла с расширением, для которого на сервере не имеется соответствующего МIME-типа, будет использоваться MIME-тип, указанный в директиве DefaultType.
DefaultType text/plain
AddType
Директива AddType служит для добавления новых типов предоставляемых клиентам документов на основе использования MIME-типов.
AddType application/x-compress .Z AddType application/x-gzip .gz .tgz AddType application/pdf pdf
<Directory directory> … </Directory>
Директива <Directory> указывает каталог, к которому будет включена группа директив, которые необходимо применить только к указанному каталогу и его подкаталогам.
<Directory C:/> Options Indexes Includes AllowOverride All Allow from all </Directory>
<Files имя-файла> … </Files>
Директива <Files> предназначена для управления доступом к файлу. Директивы, которые применяются к данному имени файла должны быть перечислены внутри.
<IfModule имя модуля> … </IfModule>
Раздел <IfModule> используется для того, чтобы отметить директивы, которые являются условными. Директивы внутри раздела IfModule обрабатываются только, если Имя модуля — True. Параметр Имя модуля являет собой имя модуля как имя файла модуля. Например.
<IfModule dir_module> DirectoryIndex index.html </IfModule>
<VirtualHost адрес>
Директивы <VirtualHost> и </VirtualHost> используются для того, чтобы включить группу директив, которые применяются только к данному виртуальному хосту, который указывается в параметре Адрес. Когда сервер получает запрос на документ относящийся к VirtualHost, он использует директивы конфигурации включенные в раздел <VirtualHost>.
<VirtualHost profiphp> ServerName profiphp:80 DocumentRoot "C:/localhost/profiphp" ErrorLog "c:/localhost/profiphp/error.log" CustomLog "c:/localhost/profiphp/access.log" common </VirtualHost>
Данная статья являет собой только ознакомительную информацию, которая подходит для использования веб-сервера в домашних условиях. Для настройки полноценного сервера, необходимо иметь более глубокие знания по настройке не только самого Apache, но и операционной системе.