Основная конфигурация apache сервера содержится в каком файле

Основная конфигурация apache сервера содержится в каком файле thumbnail

#

Apache – система конфигурации

httpd.conf — конфигурация сервера Apache

Основная конфигурация apache сервера содержится в каком файлеApache настраивается путем размещения директив в обычные текстовые файлы конфигурации. Основной конфигурационный файл сервера Apache – httpd.conf.
С помощью директивы Include могут быть добавлены другие конфигурационные файлы. Любая директива может быть установлена в любом из этих файлов конфигурации.
Apache 2.4 конфигурируется файлами находящимися в подкаталоге (по умолчанию) – conf (C:Program FilesApache Software FoundationApache2.4conf). Это – те же самые файлы, что и для конфигурирования на OS Unix, но есть несколько директив специально предназначенных для Windows.

Главный файл конфигурации сервера Apache HTTP 2.4 обычно называется — httpd.conf.

Он содержит директивы и параметры, управляющие работой Web-сервера, виртуальных серверов, а также всех программных модулей Apache 2.4. Действие директив главного файла конфигурации распространяется на весь сервер. Apache – модульный сервер. Это означает, что только самые основные функциональные возможности включены в основной сервер. Расширение функций, доступно при помощи динамически загружаемых модулей. Файлы конфигурации содержат одну директиву в строке. Наклонная черта влево “” может использоваться как последний символ в строке, для указания того, что директива продолжается на следующую строку. Не должно быть никаких других символов или пробелов между наклонной чертой влево и концом строки. Директивы в файлах конфигурации нечувствительны к регистру, но аргументы директив – часто чувствительны. Строки, которые начинаются с символа “#”, считают комментариями, и игнорируется. Комментарии не могут быть включены в строку после директивы конфигурации. Пустые строки и пробелы, перед директивой игнорируются.

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

Для проверки файлов конфигурации на синтаксические ошибки, используется команда httpd.exe -t.

При установке Apache 2.4 были введены:

в Network Domain (Сетевой Домен) – server-apache24.ru
в Server Name (Имя сервера) – www.server-apache24.ru
в Administrator’s Email Adress (Почтовый Адрес Администратора) – admin@server-apache24.ru

Следовательно, server-apache24.ru — будет именем главного сайта сервера Apache.

Главный сайт сервера Apache конфигурируется в файле – httpd.conf.

Внесение изменений в файл конфигурации сервера Apache — httpd.conf

Для обращения к главному сайту сервера Apache по доменному имени – server-apache24.ru, создайте на диске каталог – C:server-apache24.ru

  • C:server-apache24.ru
    • logs
      • access.log
      • error.log
    • www
      • index.html

каталог server-apache24.ru

В корне диска C: нужно создать каталог server-apache24.ru
В нём обязательно должны быть папки:
logs с “пустыми” файлами access.log и error.log
и
www с файлом index.html

См. в файле httpd.conf строки –
209     ServerAdmin admin@server-apache24.ru
218     ServerName www.server-apache24.ru:80
243     DocumentRoot “C:/server-apache24.ru/www”
245     <Directory “C:/server-apache24.ru/www”>

httpd.conf — конфигурирование сервера Apache 2.4

Прежде чем вносить какие-либо изменения, сделайте резервную копию файла – httpd.conf.
Действие директив главного файла конфигурации распространяется на весь сервер

Все записи, за исключением выделенных красным цветом, должны быть закомментированы. Строки начинающиеся с символа ‘#’ – это комментарии.

Изменения в основных конфигурационных файлах вступят в силу только при запуске или перезагрузке сервера Apache.
Команда – httpd.exe -k restart, позволяет завершить любые выполняемые сервером Apache операции и вынуждает Apache перечитать конфигурационный файл.

Поиск и устранение ошибок при установке сервера Apache

Apache поставляется с утилитой под названием Apache Service Monitor. С её помощью вы можете увидеть и управлять состоянием всех установленных служб Apache на любом компьютере в сети.

Перезапуск Apache 2.4

Так как изменения в основных конфигурационных файлах вступят в силу только при запуске или перезагрузке сервера Apache,
нужно перезапустить сервер.

ApacheMonitor

Значок ApacheMonitor можно увидеть нажав на кнопку Основная конфигурация apache сервера содержится в каком файле — отображать скрытые значки

#

Дважды щелкните левой кнопкой мыши на значке Apache Service Monitor.

Читайте также:  Какие витамины содержаться в горошек

#

Пезапустить сервер Apache можно нажав на кнопку Restart
в окне программы Apache Service Monitor.
Или – Stop и затем – Start.

#

Если вы внесли изменения только в файл httpd.conf,

то введя в адресную строку браузера — localhost или – 127.0.0.1,
вы увидите страницу – Ошибка 403 (Error 403).

#

Access forbidden!

You don’t have permission to access the requested directory. There is either no index document or the directory is read-protected.
If you think this is a server error, please contact the webmaster.

Error 403

127.0.0.1
Apache/2.4.4 (Win64)

Доступ запрещен!

У вас нет разрешения на доступ к запрошенному каталогу. Отсутствует индексный документ или каталог защищен от чтения.
Если вы считаете, что это ошибка сервера, обратитесь к веб-мастеру.

Ошибка 403

Войдите с правами администратора в командную строку — Администратор – Командная строка
и введите:
“C:Program FilesApache Software FoundationApache2.4binhttpd.exe” 2> C:errapache.txt

Администратор: Командная строка

Microsoft Windows [Version 10.0.14393]
(c) Корпорация Майкрософт (Microsoft Corporation), 2016. Все права защищены.

C:Windowssystem32>“C:Program FilesApache Software FoundationApache2.4binhttpd.exe” 2> C:errapache.txt

C:Windowssystem32>

На диске C:/ будет создан файл errapache.txt

AH00112: Warning: DocumentRoot
[C:/Program Files/Apache Software Foundation/Apache2.4/docs/dummy-host.server-apache24.ru] does not exist
AH00112: Warning: DocumentRoot
[C:/Program Files/Apache Software Foundation/Apache2.4/docs/dummy-host2.server-apache24.ru] does not exist

(OS 10048) Обычно разрешается только одно использование адреса сокета (протокол/сетевой адрес/порт).
: AH00072: make_sock: could not bind to address [::]:80

(OS 10048) Обычно разрешается только одно использование адреса сокета (протокол/сетевой адрес/порт).
: AH00072: make_sock: could not bind to address 0.0.0.0:80

AH00451: no listening sockets available, shutting down
AH00015: Unable to open logs

Из его содержания видно, что Apache не может обратится к каталогам:

AH00112: Предупреждение (Warning):
C:/Program Files/Apache Software Foundation/Apache2.4/docs/dummy-host.server-apache24.ru
C:/Program Files/Apache Software Foundation/Apache2.4/docs/dummy-host2.server-apache24.ru
Они не существуют (does not exist).

Но главное – это ошибки OS 10048:

не удалось привязать к адресу [::]:80 (could not bind to address [::]:80)
не удалось привязать к адресу 0.0.0.0:80 (could not bind to address 0.0.0.0:80)

Войдите в командную строку и введите:
netstat -aon

Администратор: Командная строка

Microsoft Windows [Version 10.0.14393]
(c) Корпорация Майкрософт (Microsoft Corporation), 2016. Все права защищены.

C:Windowssystem32>netstat -aon

Активные подключения

Имя Локальный адрес Внешний адрес Состояние PID
TCP 0.0.0.0:80 0.0.0.0:0 LISTENING 1612
TCP [::]:80 [::]:0 LISTENING 1612

TCP 127.0.0.1:49693 127.0.0.1:49694 ESTABLISHED 5612
TCP 127.0.0.1:49694 127.0.0.1:49693 ESTABLISHED 5612
TCP 127.0.0.1:51341 0.0.0.0:0 LISTENING 3920
TCP 127.0.0.1:52006 0.0.0.0:0 LISTENING 3708

TCP 192.168.0.100:139 0.0.0.0:0 LISTENING 4
TCP 192.168.0.100:51330 34.226.135.28:443 ESTABLISHED 1232
TCP 192.168.0.100:51345 52.196.85.70:443 ESTABLISHED 1232
TCP 192.168.0.100:52796 88.212.253.127:21 ESTABLISHED 1128
TCP 192.168.0.100:53160 151.101.112.134:443 CLOSE_WAIT 3712
TCP 192.168.0.100:53161 151.101.112.134:443 CLOSE_WAIT 3712
TCP 192.168.0.100:53162 151.101.128.134:443 CLOSE_WAIT 3712
TCP 192.168.0.100:53176 151.101.112.134:443 ESTABLISHED 3712
TCP 192.168.0.100:53179 151.101.128.233:443 CLOSE_WAIT 3712
TCP 192.168.0.100:53192 151.101.112.64:443 CLOSE_WAIT 3712
TCP 192.168.0.100:53223 23.61.217.175:443 CLOSE_WAIT 3712
TCP 192.168.0.100:53230 185.29.133.52:443 CLOSE_WAIT 3712
TCP 192.168.0.100:53246 2.18.74.149:443 CLOSE_WAIT 3712
TCP 192.168.0.100:53271 52.205.235.141:443 ESTABLISHED 5236

C:Windowssystem32>

Идентификатор процесса, более известный как идентификатор PID — это уникальный номер. Каждый процесс, запущенный в системе имеет уникальный идентификатор.
TCP 0.0.0.0:80 0.0.0.0:0 LISTENING 1612
TCP [::]:80 [::]:0 LISTENING 1612

Откройте Диспетчер задач

#

Только служба Apache2.4 имеет идентификатор PID – 1612

В каталоге C:/Program Files/Apache Software Foundation/Apache2.4/conf/extra/
откройте в Блокноте файл – httpd-vhosts.conf

Прежде чем вносить какие-либо изменения, сделайте резервную копию файла – httpd-vhosts.conf.

Замените в секциях VirtualHost
<VirtualHost *:80> на <VirtualHost 127.0.0.2:80>

httpd-vhosts.conf — содержание файла конфигурации сервера Apache 2.4

В каталоге C:WindowsSystem32driversetc
откройте в Блокноте файл – hosts
И добавьте в него строку:

127.0.0.1    localhost    www.server-apache24.ru     server-apache24.ru

Пезапустите сервер Apache, нажав на кнопку Restart
в Apache Service Monitor.

#

Введите в адресную строку браузера – server-apache24.ru
и увидите, созданную вами, индексную страницу главного сайта сервера Apache2.4

Читайте также:  В каких продуктах содержится золото

#

Индексная страница сайта должна находиться в подкаталоге www (C:server-apache24.ruwww)

После установки сервера Apache 2.4 войдите в командную строку и введите команды:
cd C:Program FilesApache Software FoundationApache2.4bin
httpd.exe -t

Будет получено два предупреждения.

Администратор: Командная строка

Microsoft Windows [Version 10.0.14393]
(c) Корпорация Майкрософт (Microsoft Corporation), 2016. Все права защищены.

C:Windowssystem32>cd C:Program FilesApache Software FoundationApache2.4bin

C:Program FilesApache Software FoundationApache2.4bin>httpd.exe -t
AH00112: Warning: DocumentRoot
[C:/Program Files/Apache Software Foundation/Apache2.4/docs/dummy-host.server-apache24.ru] does not exist
AH00112: Warning:
DocumentRoot [C:/Program Files/Apache Software Foundation/Apache2.4/docs/dummy-host2.server-apache24.ru] does not exist
Syntax OK

C:Program FilesApache Software FoundationApache2.4bin>

Установка сервера Apache 2.4 на Windows

Источник

По умолчанию конфигурация Apache 2.4 разбита на пачку файлов. Тут я рассмотрю стандартный конфиг и снабжу его русскими комментариями.

Базовый конфиг

Максимально упростим и по-русски откомментируем основной файл конфига /etc/httpd/conf/httpd.conf

#Корневая директория Apache
ServerRoot “/etc/httpd”

#Порт который будет “слушать” сервер. В случае использования Apache “за nginx” нужно указать отличное от “80” значение
Listen 8080

#Подключаем все .conf-файлы из поддиректории conf.modules.d
Include conf.modules.d/*.conf

#Пользователь и группа с которыми запускается сервер
User apache
Group apache

#Дефолтный конфиг под все директории

AllowOverride none

#Указание дефолтной директории при доступе с “внешки” (можно переопределять на конфигах виртуальных серверов)
DocumentRoot “/var/www/empty”

#Порядок поиска индексных файлов
DirectoryIndex index.html index.php

Require all denied

#Путь к error_log
ErrorLog “logs/error_log”

#Уровень логгирования
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

CustomLog “logs/access_log” combined

AddDefaultCharset UTF-8

EnableSendfile on

TypesConfig /etc/mime.types

#Дополнительные файлы конфигурации
IncludeOptional conf.d/*.conf

Дополнительно подгружаемые модули Apache

Разберемся с подгружаемыми модулями. Листинг /etc/httpd/conf.modules.d/00-base.conf с русскими комментариями выглядит так.

#Отвечает за возможность использования директив Allow и Deny в расширенном синтаксисе
#Allow from all|host|env=[!]env-variable [host|env=[!]env-variable]
#LoadModule access_compat_module modules/mod_access_compat.so

#Позволяет связать запрошенный клиентом mime-тип c cgi-скриптом
#Action action-type cgi-script [virtual]
#LoadModule actions_module modules/mod_actions.so

#Позволяет использовать синтаксис Alias
#Alias URL-path file-path|directory-path
LoadModule alias_module modules/mod_alias.so

#Позволяет явно указать поддерживаемые сервером HTTP-методы
#AllowMethods GET POST OPTIONS
LoadModule allowmethods_module modules/mod_allowmethods.so

#Модули авторизации
#LoadModule auth_basic_module modules/mod_auth_basic.so
#LoadModule auth_digest_module modules/mod_auth_digest.so
#LoadModule authn_anon_module modules/mod_authn_anon.so
LoadModule authn_core_module modules/mod_authn_core.so
#LoadModule authn_dbd_module modules/mod_authn_dbd.so
#LoadModule authn_dbm_module modules/mod_authn_dbm.so
#LoadModule authn_file_module modules/mod_authn_file.so
#LoadModule authn_socache_module modules/mod_authn_socache.so
LoadModule authz_core_module modules/mod_authz_core.so
#LoadModule authz_dbd_module modules/mod_authz_dbd.so
#LoadModule authz_dbm_module modules/mod_authz_dbm.so
#LoadModule authz_groupfile_module modules/mod_authz_groupfile.so
#LoadModule authz_host_module modules/mod_authz_host.so
#LoadModule authz_owner_module modules/mod_authz_owner.so
#LoadModule authz_user_module modules/mod_authz_user.so

#Позволяет использовать директивы индексации директорий
#LoadModule autoindex_module modules/mod_autoindex.so

#Позволяет управлять кешированием
#LoadModule cache_module modules/mod_cache.so
#LoadModule cache_disk_module modules/mod_cache_disk.so

#Позволяет преобразовавать ответ сервера в RFC2397 data URL
#LoadModule data_module modules/mod_data.so

#Позволяет управлять подключениями к базам данных. Подбробнее можно найти по ключевому слову APR
LoadModule dbd_module modules/mod_dbd.so

#Управляет сжатием отправляемого контеннта
LoadModule deflate_module modules/mod_deflate.so

#Позволяет использовать директиву DirectoryIndex для автоматической подстановки файла “по умолчанию” на запросы без файла
LoadModule dir_module modules/mod_dir.so

#Позволяет логгировать io-дамп в error_log
#LoadModule dumpio_module modules/mod_dumpio.so

#Позволяет использовать Echo-протокол
#ProtocolEcho On|Off
#LoadModule echo_module modules/mod_echo.so

#Позволяет устанавливаеть дополнительные переменные окружения в исполняемые скрипты
#LoadModule env_module modules/mod_env.so

#Позволяет управлять http-заголовками Expires и Cache-Control
#LoadModule expires_module modules/mod_expires.so

#Позволяет ответ сервера перенаправить через сторонние приложения
#LoadModule ext_filter_module modules/mod_ext_filter.so

#Позволяет управлять фильтрацией отправляемых данных
#LoadModule filter_module modules/mod_filter.so

#Позволяет отправлять кастомные заголовки клиенту
#LoadModule headers_module modules/mod_headers.so

#Позволяет настраивать server-side вставки сторонних файлов в отправялемые данные
#LoadModule include_module modules/mod_include.so

#Позволяет настроить генерацию server-info
#LoadModule info_module modules/mod_info.so

#Позволяет вести логгирование запросов и ошибок
LoadModule log_config_module modules/mod_log_config.so

#Позволяет логгировать так же информацию об объемах принятой/отправленной информации
LoadModule logio_module modules/mod_logio.so

#Позволяет использовать директиву MimeMagicFile
LoadModule mime_magic_module modules/mod_mime_magic.so

#Позволяет соотносить запрошенные типы файлов/контента с server-side хэндлерами, фильтрами, файлами и типами контента
LoadModule mime_module modules/mod_mime.so

Читайте также:  Какие вещества содержатся в удобрениях

#Позволяет управлять отображением различных видов одного файла в зависимости от входящего запроса (например, при реализации мультиязычности)
#LoadModule negotiation_module modules/mod_negotiation.so

#Предназначет для переопределения клиентского IP в случае если apache используется за другим front-сервером
LoadModule remoteip_module modules/mod_remoteip.so

#Позволяет установить таймауты для генерации ответов клиенту
#RequestReadTimeout [header=timeout[-maxtimeout][,MinRate=rate] [body=timeout[-maxtimeout][,MinRate=rate]
#LoadModule reqtimeout_module modules/mod_reqtimeout.so

#Позволяет использвать Rewrite-движок. Необходим для большинства MVC-фреймворков
LoadModule rewrite_module modules/mod_rewrite.so

#Позволяет устанавливать переменные окружения в зависимости от характеристик запроса
#LoadModule setenvif_module modules/mod_setenvif.so

#Memory-провайдеры
#LoadModule slotmem_plain_module modules/mod_slotmem_plain.so
LoadModule slotmem_shm_module modules/mod_slotmem_shm.so

#socache-провайдеры
#LoadModule socache_dbm_module modules/mod_socache_dbm.so
#LoadModule socache_memcache_module modules/mod_socache_memcache.so
#LoadModule socache_shmcb_module modules/mod_socache_shmcb.so

#Позволяет настроить выдачу информации о статусе и текущей производительности сервера
#LoadModule status_module modules/mod_status.so

#Позволяет производить операции на отправляемых данных во время отправки
#LoadModule substitute_module modules/mod_substitute.so

#Позволяет выполнять CGI-скрипты от имени определенного пользователя
#LoadModule suexec_module modules/mod_suexec.so

#Позволяет задавать уникальный ID каждому реквесту
#LoadModule unique_id_module modules/mod_unique_id.so

#Позволяет управлять некоторыми вопросами в области unix-безопасности
LoadModule unixd_module modules/mod_unixd.so

#Позволяет задавать директории для работы определенных пользоваталей
#LoadModule userdir_module modules/mod_userdir.so

#Позволяет организовывать различные конфиги Apache в зависимости от версии Apache
#LoadModule version_module modules/mod_version.so

#Позволяет создавать динамически конфигурируемый виртуальный хостинг
#LoadModule vhost_alias_module modules/mod_vhost_alias.so

#Управляет буфферизацией
##LoadModule buffer_module modules/mod_buffer.so

#Позволяет управлять периодической проверкой работы других модулей
#LoadModule watchdog_module modules/mod_watchdog.so

#Управляет автоматической отправкой отчетности о состоянии сервера
#LoadModule heartbeat_module modules/mod_heartbeat.so
#LoadModule heartmonitor_module modules/mod_heartmonitor.so

#Позволяет настраивать мониторинг “сервинга” сайта пользователем с помощью кук
#LoadModule usertrack_module modules/mod_usertrack.so

#Позволяет настроить отдачу контента со скоростью различных старых стандартов модемов
#LoadModule dialup_module modules/mod_dialup.so

#Позволяет легко настроить трансляцию отправляемых данных в нужную кодировку
#LoadModule charset_lite_module modules/mod_charset_lite.so

#Позволяет сконфигурировать debug-log
#LoadModule log_debug_module modules/mod_log_debug.so

#Позволяет ограничить скорость отдачи данных для некоторых видов запросов
#LoadModule ratelimit_module modules/mod_ratelimit.so

#Позволяет настроить отдачу запроса обратно клиенту с использованием некоторых фильтров
#LoadModule reflector_module modules/mod_reflector.so

#Позволяет задавать максимальный размер тела запроса
#LoadModule request_module modules/mod_request.so

#Позволяет фильтровать входящие запросы и исходящие ответы с помощью sed-синтаксиса
#LoadModule sed_module modules/mod_sed.so

#Позволяет настраивать реакцию сервера на неверные адреса (например отключать case-sensitive)
#LoadModule speling_module modules/mod_speling.so

Здесь и далее он представлен в таком виде в котором использую его лично я – все лишние модули я просто убрал.

Файл конфига 00-dav.conf отвечает за модули авторизации. Еслми пользуетесь php-методами авторизации – можно смело все комментировать или удалить файл.

Файл 00-lua.conf содержит модули отвечающие за работу lua-скриптов в конфигах. Если не используете – можно комментировать или удалить файл целиком.

00-mpm.conf содержит подгрузку модулей, отвечающих за процессинг запросов.

00-systemmd.conf подгружает модуль для правильной работы с systemctl операционной системы.

00-proxy.conf содержит модули про проксирование. Если вы не используете apache-проксиование (например, у вас для фронт используется nginx) – то так же можно комментировать/удалять этот файл.

01-cgi.conf подгружает модули обработки cgi-скриптов. Если вы их не используете – и этот файл можно закомментировать/удалить.

Дополнительные подгружаемые Apache файлы:

  • /etc/httpd/conf.d/autoindex.conf – используется для настройки автоиндесиования. Можно удалить если вы не используете мод mod_autoindex
  • /etc/httpd/conf.d/userdir.conf – используется для конфигурация дсотупа в зависимости от пользователя. Можно удалить если вы не используеете модуль mod_userdir.
  • /etc/httpd/conf.d/welcome.conf – конфигурирует отображение welcome-страницы Apache. Можно удалить.

Виртуальные хосты

Теперь, наконец, можно настроить виртуальные хосты.

Создадим папку куда будем складывать конфиги виртуальных хостов.

mkdir /etc/httpd/conf.vhosts.d

Создадим там файл domain.com.conf и внесем в него такую заготовку.

DocumentRoot /var/www/sites/domain.com
ServerName domain.com
ServerAlias www.domain.com
ErrorLog /var/www/sites/domain.com/logs/error_log
CustomLog /var/www/sites/domain.com/logs/access_log combined

Options FollowSymLinks
AllowOverride All

Ваш сайт должен лежать в директории /var/www/sites/domain.com.

Осталось добавить строчку Include conf.vhosts.d/*.conf в файл /etc/httpd/conf/httpd.conf и перезапустить httpd.

Файлов виртуальных хостов можно добавить сколько угодно – все они будут подтягиваться автоматически при рестарта сервиса.

Apache готов к работе.

Источник