Установка Apache в CentOS 7
Содержание
Для администрирования собственного веб-сайта на локальном сервере требуется установка огромного количества дополнительных компонент, которые и организуют единую систему, функционирующую слажено и без каких-то ошибок. Одной из основных составляющих таковой структуры можно считать веб-сервер. Юзеры в большинстве случаев предпочитают использовать конкретно Apache из-за его простоты и гибкости опции, также способности подключения наружных модулей. Но установка и основная конфигурация — процесс не резвый и для неких даже непростой, потому мы бы желали поведать об этом более детально, взяв за пример дистрибутив CentOS 7.
Устанавливаем Apache в CentOS 7
Структура нынешней статьи будет поэтапной, чтоб даже самый начинающий пользователь сообразил, как конкретно осуществляется установка и подготовка рассматриваемого веб-сервера. Сходу уточним, что мы не предоставляем руководств по детализированной настройке Apache, так как это находится в зависимости от личных предпочтений юзера и имеющихся других принципиальных компонент. За данной информацией всегда рекомендуем обращаться к официальной документации.
Шаг 1: Подготовка и установка
Начнем сразу с установки компонент, отвечающих за правильность работы Apache и добавление всех вспомогательных служб. Использовать для этого предлагаем репозиторий дистрибутива, так как там всегда выкладывается последняя размеренная версия софта, а сам процесс установки не займет много времени.
- Запустите «Терминал», к примеру, через значок в разделе «Избранное».
sudo yum update httpd
, активировав ее нажатием на кнопку Enter.
Это действие производится от имени суперпользователя, а означает, придется подтвердить его, указав пароль от данной учетной записи.
В случае установки обновлений вы будете уведомлены об этом, а если пакет отсутствует, то появится другое сообщение соответственного нрава.
Сейчас побеседуем об установки Apache с нуля. Как мы уже произнесли, использовать для этого будем официальные хранилища, как следует, необходимо ввести команду sudo yum install httpd
.
При возникновении извещения об установки пакета подтвердите его, выбрав вариант y.
Ждите окончания установки, во время этого не закрывайте текущую терминальную сессию, чтоб не оборвать процесс.
По окончании сразу рекомендуется запустить веб-сервер, что можно сделать через sudo systemctl start httpd
.
Проверьте текущее состояние через sudo systemctl status httpd
.
Извещение «Active: active (running)» предполагает, что на данный момент Apache корректно работает и можно перебегать к его предстоящей настройке.
Это было все, что следует знать об основной процедуре установки веб-сервера. Видите ли, ничего сложного в ней нет. Дальше мы желаем поведать о содействии с главными службами и установке основной конфигурации, а вам остается решить, стоит изучить данные аннотации либо познания по настройке и управлению уже имеются.
Шаг 2: Управление службой Apache
Веб-сервер в CentOS, как и в других дистрибутивах, работает в фоновом режиме в виде службы. По дефлоту она добавляется в автозагрузку, а об активации и проверке состояния мы уже поведали ранее. Если у вас появилось желание управлять данным инвентарем, то осуществляется это так:
- Введите
для полной остановки Apache.sudo systemctl stop httpd
sudo systemctl restart httpd
. Животрепещуща эта команда в тех ситуациях, когда сервер дает сбои либо требуется перезапустить его из-за особенностей взаимодействия с остальными компонентами.
Используйте sudo systemctl reload httpd
, если нужно, чтоб все конфигурации после опции вступили в силу, но при всем этом ни одно из соединений не было разорвано.
Команда sudo systemctl disable httpd
убирает Apache из автозагрузки, а sudo systemctl enable httpd
возвращает стандартное состояние. Дополнительно при включении этой функции вы будете уведомлены о разработке новейшей символической ссылки, отвечающей за данный параметр.
Как видно, управляют состоянием службы самые стандартные команды. Их будет несложно уяснить, если вы нередко обязаны прибегать к схожим мерам во время администрирования сети, отдельного веб-сайта либо каких-то приложений.
Шаг 3: Базисная конфигурация
К базисной конфигурации относится настройка виртуального хоста, который понадобится для изоляции опций и размещения различных доменов на одном сервере. 1-го стандартного виртуального хоста полностью довольно, если вы имеете дело только с одним веб-сайтом, но при регистрации других доменов придется прибегнуть к созданию дополнительных характеристик. На данный момент за пример мы возьмем стандартный виртуальный хост, а вы измените его адресок, если это требуется.
- Начнем с сотворения каталога, где будут храниться все дочерние файлы виртуального хоста. Делается это через команду
.sudo mkdir -p /var/www/example.com/html
sudo mkdir -p /var/www/example.com/log
.
Задайте стандартные права на директорию через sudo chown -R $USER:$USER /var/www/example.com/html
.
Дополнительно установите и привилегии для каждого юзера, вставив sudo chmod -R 755 /var/www
.
Приступим к созданию эталона главной странички, которая будет выводиться на экран при проверке работоспособности хоста. Сделайте новый текстовый файл через удачный редактор, к примеру, используя nano, следует ввести sudo nano /var/www/example.com/html/index.html
.
При открытии редактора текста появится извещение о том, что это новый файл. Не переживайте, ведь так и должно быть. Мы специально создаем его, выставляя подобающую конфигурацию.
Воткните туда приведенный ниже код, заменив стандартное приветствие на случайный текст. Если желаете, сможете на сто процентов переработать структуру, создав подходящую себе страничку.
Welcome to Example.com!
Success! The example.com virtual host is working!
Сохраните конфигурации, нажав на Ctrl + O, а потом покиньте текстовый редактор через Ctrl + X.
Это были только подготовительные опции. Сейчас приступим к самому виртуальному хосту: поначалу необходимо указать папки его хранения. Для этого введите sudo mkdir /etc/httpd/sites-available /etc/httpd/sites-enabled
.
После чего укажите веб-серверу, что на данный момент ему необходимо вести взаимодействие и с другими компонентами. Осуществляется эта задачка через редактирование головного конфигурационного файла. Запустите его через текстовый редактор, указав sudo nano /etc/httpd/conf/httpd.conf
.
Опуститесь в самый низ по списку и воткните строчку IncludeOptional sites-enabled/*.conf
.
До выхода из редактора текста не забудьте сохранить все конфигурации.
Для сотворения самого виртуального хоста пригодится очередной конфигурационный файл. Сделайте его через sudo nano /etc/httpd/sites-available/example.com.conf
.
Воткните туда обозначенное дальше содержимое, заменив нужные строчки на свои.
ServerName www.example.com
ServerAlias example.com
DocumentRoot /var/www/example.com/html
ErrorLog /var/www/example.com/log/error.log
CustomLog /var/www/example.com/log/requests.log combined
Остается только активировать файл, создав символическую ссылку через sudo ln -s /etc/httpd/sites-available/example.com.conf /etc/httpd/sites-enabled/example.com.conf
.
Шаг 4: Настройка контроля доступа
Если речь зашла о настройке глобальных характеристик, то нужно обеспечить и контроль доступа, указав ряд юзеров, которые сумеют заносить конфигурации в рассматриваемые ранее сборники. Осуществляется эта процедура при помощи стандартного инструмента SELinux, отвечающего за управление уровнями доступа.
- Установите глобальный параметр безопасности через
. Он обеспечит обработку всех типов процессов как один.sudo setsebool -P httpd_unified 1
sudo ls -dZ /var/www/example.com/log/
.
В итоге вы увидите содержимое drwxr-xr-x. root root unconfined_u:object_r:httpd_sys_content_t:s0 /var/www/example.com/log/. Оно значит, что на данный момент Apache может только читать те файлы, которые были сделаны в установленной папке, соответственно, придется поменять конфигурацию.
Производится эта задачка через sudo semanage fcontext -a -t httpd_log_t "/var/www/example.com/log(/.*)?"
.
Сохраните конфигурации и сделайте так, чтоб они активизировались после перезагрузки сервера, введя sudo restorecon -R -v /var/www/example.com/log
.
Сейчас снова проверьте внесенные конфигурации через sudo ls -dZ /var/www/example.com/log/
.
Видите ли, в итоге вывод имеет форму drwxr-xr-x. root root unconfined_u:object_r:httpd_log_t:s0 /var/www/example.com/log, как следует, все выполнено правильно.
Осталось только протестировать все конфигурации. Для этого введите sudo systemctl restart httpd
и нажмите на Enter.
Подтвердите действие, указав пароль суперпользователя.
Опять сделайте запрос для каталога, введя ls -lZ /var/www/example.com/log
. Если показавшееся содержимое имеет формат -rw-r--r--. 1 root root error.log -rw-r--r--. 1 root root 0 requests.log
, означает, все прошлые опции были выполнены верно.
Вы были осведомлены с процедурой установки и общей опции веб-сервера Apache в CentOS 7. Видите ли, сама установка не займет много времени, а все трудности связаны только с конфигурацией. Если представленного управления по изменению характеристик и управлению Apache вам оказалось не много, рекомендуем изучить официальную документацию, воспользовавшись ссылкой ниже.
Перейти на официальный веб-сайт документации Apache
Источник: lumpics.ru