# PROCESSES Ресурсы Цикл разработки ПО Waterfall RUP Agile Kanban Управление ARCHITECTURE Ресурсы ПО для Архитектора Кто архитекторы? Архитектурные слои язык Archimate GAP-анализ SOA Типы интеграции Vision (Концепция) Проектное решение ESB Микросервисы и service mesh HTTP/REST RPC DDD ANALYSIS Ресурсы ПО для Аналитика Кто аналитики? Бизнес-процесс Требования Уровни и типы Источники Стейкхолдеры Нотации Сервисы DevOps CI/CD/CDP VM и Docker Контракты API Оценка задачи git Frontend Apache Регулярка Linux TESTING Ресурсы QA и QC Цикл тестирования Уровни тестирования Виды тестирования Баг-репорт Тестирование требований Тест-анализ и тест дизайн Интеграционное, API, E2E Тест план Метрики качества Автотесты Selenium XPATH Генератор данных Нагрузочное DATA Ресурсы MDM Big data Об информации SQL intro MongoDB intro LIBRARY Системная инженерия Станислав Лем Экстраполяция в будущее Политэкономия Сознание, интеллект

/ АНАЛИЗ АРХИТЕКТУРА ДАННЫЕ DevOps: + DevOps + Frontend - Apache web-server | Почерпнуть мудрость | Основная информация | Конфигурирование | Механизм виртуальных хостов + Регулярные выражения + git + Javascript + Perl + Python + Ruby + Rust + Полезности в Windows + Linux Gaming Библиотека ПРОЦЕССЫ ТЕСТИРОВАНИЕ
Веб-сервер Apache
latest update of the page: 01-03-2023, 21:31 UTC
Почерпнуть мудрость
Основная информация
Apache web-server logo

Apache HTTP-сервер — свободный веб-сервер. позволяет подключать внешние модули для предоставления данных, использовать СУБД для аутентификации пользователей, модифицировать сообщения об ошибках и т. д. Поддерживает IPv6.

Веб-сервер — программный компонент, принимающий запросы от клиентов, обычно веб-браузеров, и выдающий им ответы, как правило, вместе с HTML-страницей, изображением, файлом, медиа-потоком или другими данными.

Установка: sudo apt-get install apache2

Конфигурирование
Механизм виртуальных хостов

Apache имеет встроенный механизм виртуальных хостов. Он позволяет полноценно обслуживать на одном IP-адресе множество сайтов (доменных имён), отображая для каждого из них собственное содержимое.

Для каждого виртуального хоста можно указать собственные настройки ядра и модулей, ограничить доступ ко всему сайту или отдельным файлам. Некоторые MPM, например Apache-ITK позволяют запускать процесс httpd для каждого виртуального хоста с отдельными идентификаторами uid и guid.

Примитивный пример.
  1. Создать файл с конфигурацией Apache для хоста проектаsudo nano /etc/apache2/sites-available/project.confстроки:
    <VirtualHost *:80> ServerName project.dev ServerAdmin webmaster@localhost DocumentRoot /home/username/project <Directory /home/username/project > AllowOverride all </Directory> ErrorLog ${APACHE_LOG_DIR}/error.log CustomLog ${APACHE_LOG_DIR}/access.log combined </VirtualHost>
  2. Создать файл с конфигурацией Apache для хоста другого проектаsudo nano /etc/apache2/sites-available/project2.confстроки:
    <VirtualHost *:80> ServerName project2.dev ServerAdmin webmaster@localhost DocumentRoot /home/username/projectother <Directory /home/username/projectother > AllowOverride all </Directory> ErrorLog ${APACHE_LOG_DIR}/error.log CustomLog ${APACHE_LOG_DIR}/access.log combined </VirtualHost>
  3. Добавить в список хостов sudo nano /etc/hosts строки: 127.0.0.1 project.dev
    127.0.0.1 project2.dev
  4. Активация (enable) созданных конфигураций Apache для наших проектовsudo a2ensite project
    sudo a2ensite project2
    Примечание: деактивация делается командой a2dissite
  5. Перезапуск Apachesudo /etc/init.d/apache2 restart
  6. Всё, теперь мы можем заходить на project.dev/ и project2.dev/ с локалки.
    Примечание: если хотим дать возможность заходить к нам на машину извне — то в файл .conf нужно добавить строку Listen 80, например.