SDB:Настройка HTTP Сервера (Apache)
Проверено в openSUSE
Рекомендуемые статьи
Связанные статьи
Ключевые слова: "Настройка Apache", "Настройка веб-сервера", "Настройка HTTP сервера".
Базовая настройка
Настройки Apache вызываются через Центр управления YaST2 -> Сетевые службы -> Сервер HTTP.
Если у Вас отсутствует указанный пункт, то необходимо сначала установить все необходимые пакеты для обеспечения работы сервера HTTP. Об установке читайте статью SDB:Установка HTTP Сервера.
По вызову настроек у Вас должно открыться окно "Конфигурация HTTP сервера".
Раздел "Слушать порты и адреса"
Все функции HTTP сервера будут доступны только после включения службы HTTP (таким образом будет запущена служба Apache2);
Список "Слушать на портах" предназначен для указания, запросы каких адресов и на каких портах обрабатывать HTTP сервером. Если Вы поднимаете сервер целью тестирования, то достаточно будет добавить пункт со значениями: "Сетевой адрес" = "127.0.0.1", "Порт" = "80".
Также под списком представлена возможность сразу же открыть указанные в списке порты в брандмауэре. В настройках брандмауэра можно выбрать сетевые интерфейсы, для которых будет открыт порт.
Раздел "Модули сервера"
Обычно при работе с HTTP сервером используются дополнительные возможности, к примеру PHP, Perl и т.п. Если Вам требуется определённая возможность, то необходимо включить соответствующий модуль. Если Вы не нашли нужного Вам модуля, тогда необходимо его найти, загрузить и добавить в этом разделе настройки.
Если Вы не знаете, что именно Вам нужно, то для начала Вам могут понадобиться включёнными модули PHP5 и Perl.
Раздел "Основной хост"
Для тестовых целей почти все настройки можно оставить по-умолчанию. Правке подлежит только "Имя сервера" (об этом читайте ближе к концу раздела).
По-умолчанию корневым документом является путь "/srv/www". Обратите внимание на то, что на конце пути не должно быть слэша. Пользователь обычно не имеет прав записи по этому пути на уровне системы.
Права доступа (параметр Directory) к корневому документу по-умолчанию открыты полностью. Для тестовых целей этого достаточно. Если Вы изменили путь к корневому документу, тогда и при данном указании прав доступа необходимо соответственно изменить путь к папке.
Примечание. Алиас (Alias) предназначен для создания виртуальных папок сразу для всех сайтов, предоставляемых HTTP сервером (точнее сказать, для всех хостов, об этом далее).
В данном случае имеется алиас на папку иконок с указанием пути. Обратите внимание на то, что в данном случае и алиас и путь имеют на конце по слэшу.
ScriptAlias также является алиасом, но только предназначен для указания единого пути к скриптам (например, для Perl скриптов).
Для каждого пути создаваемого алиаса необходимо также указывать права доступа.
Include используется для добавления всех прочих базовых настроек сервера HTTP. В именах файлов разрешается использовать маски.
Имя сервера для тестовых целей лучше указать как "localhost" (без кавычек).
E-Mail администратора можно указать для начала любой.
Раздел "Хосты"
В этом разделе добавляются предоставляемые HTTP сервером сайты. Точнее - виртуальные хосты (связки адресных имён и конкретных папок на компьютере).
Для тестовых целей изменим имеющуюся единственную запись (или, если она отсутствует, то добавим её).
В качестве корневого документа создаваемого виртуального хоста нужно указать папку, в который Вы желаете хранить файлы тестового сайта. Эта папка должна существовать и к ней должен быть разрешён (системно) доступ для записи обычным (текущим) пользователем. Также стоит обратить внимание на то, что на конце пути не должно быть слэша.
Имя сервера создаваемого виртуального хоста для начала можно указать как "localhost" (без кавычек). Вы можете указать другое имя (например, mysite.gov), тогда Вам будет предложено привязать к придуманному имени конкретный IP адрес (обычно это 127.0.0.1). Имя сервера определяет название, по которому будет доступен Ваш сайт.
E-mail администратора для тестовых целей также можно указать любой.
И необходимо выставить права доступа к указанному выше корневому документу. Опять же, для тестовых целей можно открыть полный доступ.
Далее нужно выбрать ID виртуального хоста. По сути это и есть привязка выбранного имени сервера к конкретному IP адресу. Также можно вместо задания IP адреса задать определённый HTTP заголовок. Но для тестовых целей это не обязательно.
После нажатия "Далее" или "ОК" Вы вновь должны вернуться в рассматриваемый раздел "Хосты".
Вы можете создать столько виртуальных хостов (локально доступных сайтов), сколько Вам угодно.
Завершение базовой настройки
По окончанию настройки просто нажмите кнопку "Завершить". Должна пройти запись настроек, а затем запуск службы Apache. Если этого не произошло, читайте раздел решения возможных проблем.
Настройки безопасности
Необходимо (to do):
- Привести методику настройки безопасности для тестирования своих сайтов локально (без предоставления внешнего доступа)
- Привести методику настройки безопасности для прямых функций HTTP сервера, то есть для предоставления внешнего доступа к виртуальным хостам.
Решение возможных проблем
Самые вероятные причины неверных настроек HTTP сервера
- Указана несуществующая папка. Если Вы не забыли создать папку, то возможно опечатались при указании пути. Учтите то, регистр символов в пути учитывается;
- Установлен ненужный слэш на конце пути, либо наоборот - нужный слэш в пути не установлен. Обычно при указании папки на конце слэш не ставят, при указании алиасов - ставят. Конкретно нюансы читайте в описании настройки сервера выше;
- Запрещён доступ для указанной папки виртуального хоста. Для всех виртуальных хостов нужно разрешить доступ на запись обычному пользователю;
- Указан несуществующий модуль, либо этот модуль отказывается запускаться. Для проверки стоит запомнить все включенные модули, а затем всех их выключить. После этого следует попробовать произвести запуск службы HTTP сервера (принять настройки). Если получится, то теперь по одному модулю (или по группам) включать и принимать настройки до тех пор, пока не будет найден проблемный модуль.
Если одна из перечисленных ошибок встречается хоть в каком-то месте, то служба HTTP сервера уже не сможет запуститься.
"Невозможно регулировать Apache"
Данная ошибка может появиться при попытке запуска службы с неверными настройками. Самые вероятные причины неверных настроек смотрите выше.
Оригинал в старой английской вики old-en:YaST HTTP Server