Apache
Содержание
Установка Apache
Apache — самый широко используемый веб-сервер. Он имеет множество мощных функций, включая динамически загружаемые модули, надежную поддержку различных медиаформатов и интеграцию с другим популярным программным обеспечением. Свободный кроссплатформенный веб-сервер, поддерживающий такие операционные системы, как Linux, BSD, Mac OS, Microsoft Windows. Основными достоинствами веб-сервера Apache считаются его надёжность и гибкость конфигурации, позволяющие подключать к нему внешние модули предоставления данных, использовать БД и многое другое.
Для установки сервера Apache в Rosa Server надо выполнить команду:
dnf install apache-base
Будет установлен базовый набор сервера Apache
Настройка сервисов
Чтобы включить сервер Apache надо выполнить команду:
systemctl start httpd.service
Чтобы включить Apache при загрузке систем выполните команду:
systemctl enable httpd.service
Перезапуск Apache выполняется командой:
systemctl restart httpd.service
Проверка работы Apache
После старта сервиса Apache можно проверить из консоли:
httpd -v
Так же можно открыть браузер и набрать адрес страницы: http://<ip адрес>/
где <ip адрес> - это ip адрсе или имя хоста запущенного Apache
Конфигурация сервера
- /var/log/httpd - здесь хранятся логи сервера Apache
- /etc/httpd/ - основная директория конфигурации Apache
- /etc/httpd/conf/httpd.conf - основной файл конфигурации сервера
- /etc/httpd/conf.d/ - директрия с дополнительными файлами конфигурации сервера
- /etc/httpd/modules.d/ - директория с конфигурационными файлами модулей Apache
Изначально у Apache один виртуальный хост, и все файлы хоста (сайта) хранятся в:
/var/www/html/
Настройка виртуальных хостов
Для примера, сделаем два виртуальных хоста: rosaserver1 и rosaserver2
Начнем с создания директории, где будут храниться все файлы виртуальных хостов. Делается это через команду
mkdir -p /var/www/rosaserver1/html mkdir -p /var/www/rosaserver2/html
Теперь нам надо задать стандартные права на директорию с виртуальными хостами:
hown -R $USER:$USER /var/www/rosaserver1/html hown -R $USER:$USER /var/www/rosaserver2/html
Теперь нужно создать страницу для каждого из сайтов, чтобы иметь возможность просмотреть их.
Для первого сайта:
nano /var/www/rosaserver1/html/index.html
Добавляем в файл простой код:
<html> <head> <title>Welcome to RosaServer1!</title> </head> <body> <h1>Apache Success! The RosaServer1 is working!</h1> </body> </html>
Для второго сайта:
nano /var/www/rosaserver2/html/index.html
Добавляем в файл простой код:
<html> <head> <title>Welcome to RosaServer2!</title> </head> <body> <h1>Apache Success! The RosaServer2 is working!</h1> </body> </html>
Сохраните и закройте файл
Для начала создайте каталог для хранения файлов хостов (sites-available), а также каталог, предоставляющий Apache список хостов, которые нужно обслуживать (sites-enabled).
mkdir /etc/httpd/sites-available mkdir /etc/https/sites-enabled
Теперь укажите веб-серверу, что сейчас ему нужно взаимодействовать и с другими виртуальными хостами.
Откройте основной конфигурационный файл /etc/httpd/conf/httpd.conf
Пройдите в конец файла. И добавьте строку: IncludeOptional sites-enabled/*.conf
Сохраните и закройте файл.
Теперь надо создать файлы конфигурации для наших виртуальных хостов:
По очереди открываем в nano наши конфигурационные файлы
nano /etc/httpd/sites-available/rosaserver1.conf nano /etc/httpd/sites-available/rosaserver2.conf
И вписываем туда следующие даныне:
ServerName rosaserver1 ServerAlias www.rosaserver1 DocumentRoot /var/www/rosaserver1/html DirectoryIndex index.html index.htm <Directory /var/www/rosaserver1/html> AllowOverride all Require all granted </Directory> ErrorLog logs/rosaserver1_error.log
Соответственно во втором файле меняем rosaserver1 на rosaserver2
Сохраняем и выходим.
Включаем наши виртуальные хосты. Для этого создайте символическую ссылку для каждой секции (сайта) в каталог sites-enabled:
ln -s /etc/httpd/sites-available/rosaserver1.conf /etc/httpd/sites-enabled/rosaserver1.conf ln -s /etc/httpd/sites-available/rosaserver2.conf /etc/httpd/sites-enabled/rosaserver2.conf
Теперь можно перезапустить сервер Apache и посмотреть как работают наши вритуальные хосты.