CentOS 7. Настройка httpd centos 7


Веб-сервер на базе NGINX под CentOS 7

Эта статья находится в процессе редактирования в данный момент! Её пока следует использовать осторожно, руководствуясь здравым смыслом....

По счастливой случайности мне досталась удивительная виртуальная машина, на которую администраторы хостинга натянули минимальную CentOS 7. Машинка достаточно резвая, имеет 3 Гб ОЗУ, 2 процессора Intel Xeon e5-2630v3 (но нам доступен лишь один). Файловая система XFS.

uname -a Linux localhost.localdomain 3.10.0-229.el7.x86_64 #1 SMP Fri Mar 6 11:36:42 UTC 2015 x86_64 x86_64 x86_64 GNU/Linux

Задача: превратить машину в хостинг для тяжёлого сайта.

Разбираемся с интерфейсами

По привычке набираем

# ifconfig

...и видим

-bash: ifconfig: command not found

Ой, а что у нас теперь вместо ifconfig? Ах, да, у нас ip addr.

# ip addr 1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 inet 127.0.0.1/8 scope host lo valid_lft forever preferred_lft forever inet6 ::1/128 scope host valid_lft forever preferred_lft forever 2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000 link/ether a6:f7:0f:92:9b:aa brd ff:ff:ff:ff:ff:ff inet 5.189.206.250/24 brd 5.189.206.255 scope global eth0 valid_lft forever preferred_lft forever inet6 fe80::a4f7:fff:fe92:9baa/64 scope link valid_lft forever preferred_lft forever

Оказывается, нам забыли указать DNS при установке операционной системы. Добавляем записи

cd /etc/sysconfig/network-scripts/ vi ifcfg-eth0

Добавляем строки

DNS1=8.8.8.8 DNS2=8.8.4.4

Необходимо перезапустить сеть

service network restart

Ура, мы теперь по-настоящему в интернете.

Если нет ifcfg-eth0, посмотрите что-то похожее, например ifcfg-enp3s0.

Базовая подготовка

Общее обновление

yum -y update

Доставляем жизненно необходимые (для людей!) пакеты

yum -y install mc wget

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

mcedit /etc/sysconfig/selinux

Изменим значение

SELINUX=disabled

Приходится перезагружаться

reboot

Межсетевой экран

Сначала необходимо определиться: мы за годами проверенный iptables или за новомодный FirewallD? В данном случае хотелось бы отказаться от FirewallD.

Забываем про FirewallD

systemctl disable firewalld && systemctl stop firewalld && yum erase firewalld

Ставим iptables

yum install iptables-services touch /etc/sysconfig/iptables touch /etc/sysconfig/ip6tables systemctl start iptables && systemctl start ip6tables && systemctl enable iptables && systemctl enable ip6tables

===============

Привожу свой файл iptables в качестве примера.

Настройка сервера SSH

Меняем порт SSH.

Чтобы повысить защищённость сервера, меняем значение порта для подключения по SSH.

mcedit /etc/ssh/sshd_config

Выставляем:

Port 555

systemctl restart sshd.service tail -f /var/log/messages

Видим

Nov 4 07:29:14 localhost systemd: Stopping OpenSSH server daemon... Nov 4 07:29:14 localhost systemd: Started OpenSSH Server Key Generation. Nov 4 07:29:14 localhost systemd: Starting OpenSSH server daemon... Nov 4 07:29:14 localhost systemd: Started OpenSSH server daemon.

Если видим что-то другое, значит, мы забыли отключить SELinux, тут два варианта, или всё-таки отключаем, или же ищем в интернете методички по установке semanage (но это уже без меня).

Удаляем в iptables лишние строки (порты SSH) и перезапускаем

systemctl restart iptables.service

Выходим из терминала и заходим. Получилось? У меня – да.

Веб-окружение

Устанавливаем nginx через официальный репозиторий

mcedit /etc/yum.repos.d/nginx.repo

Вставляем содержимое:

[nginx] name=nginx repo baseurl=http://nginx.org/packages/centos/7/$basearch/ gpgcheck=0 enabled=1

Теперь привычной командой запускаем установку:

yum install -y nginx

Добавляем в автозагрузку и запускаем

systemctl start nginx.service && systemctl enable nginx.service

Устанавливать Apache нам нет необходимости. Но мы его всё же установим в целях совместимости, на будущее. Кроме того, пользователь apache нам пригодится, от него будут работать все веб-сервисы (так сложилось исторически).

yum -y install httpd

Устанавливаем интерпретатор PHP

Вариант 1 (простой). Устанавливаем стандартный интерпретатор PHP

yum -y install php php-pdo php-imap php-opcache php-gd php-common php-cli php-mysql php-xml php-mbstring

Вариант 2 (хитрый).Если нужна более серьезная версия, то пользуемся проверенным способом, устанавливаем php 5.6.

Вариант 3 (модный).На момент написания статьи я рекомендую переходить на php версии 7. Её мы будем ставить из репозитория Webtatic

rpm -Uvh https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm yum install -y php70w php70w-opcache php70w-fpm php70w-pdo php70w-imap php70w-mysql php70w-xml php70w-mbstring

Убеждаемся, что у нас свежая версия командой php -v:

# php -v PHP 7.0.6 (cli) (built: May 1 2016 10:24:20) ( NTS ) Copyright (c) 1997-2016 The PHP Group Zend Engine v3.0.0, Copyright (c) 1998-2016 Zend Technologies with Zend OPcache v7.0.6-dev, Copyright (c) 1999-2016, by Zend Technologies

Устанавливаем MariaDB

yum install -y mariadb mariadb-server

Запускаем и добавляем в автозапуск:

systemctl enable mariadb && systemctl start mariadb

Первоначальная настройка СУБД выполняется сразу после процедуры установки. Она заключается в следующем:

  • Смена пароля пользователя root базы mysql
  • Удаление созданной по умолчанию таблицы test из базы mysql
  • Удаление созданного по умолчанию пользователя anonymous

Выполним команду mysql_secure_installation, согласимся со всеми пунктами, зададим пароль администратора.

Чтобы в будущем сменить пароль, воспользуемся командой mysqladmin -u root password

Устанавливаем php-fpm (если пользовались Вариантом 1 или Вариантом 2):

yum install -y php-fpm

Запускаем и добавляем в автозапуск:

systemctl enable php-fpm && systemctl start php-fpm

Ни в коем случае не забываем про /var/cache – в ней nginx должен работать без каких-либо помех

chown -R apache:apache /var/cache/nginx/

 

Конфигурация nginx

Изменяем под себя конфигурационный файл nginx

Для примера мой вариант nginx.conf

Это общие настройки веб-сервера, в которых мы указываем, что работа ведётся от имени пользователя apache, количество процессов выбирает сам nginx, включаем компрессию gzip (у меня мощный процессор, поэтому 7, но вообще лучше не борщить и выбирать 4-6). Все виртуальные хосты будем настраивать отдельными конфигурационными файлами.

Добавляем виртуальный хост:

Для примера мой вариант vhost.conf для коммерческого сайта.

В примере учтены следующие моменты

  • Связка NGINX+PHP-FPM без Apache
  • Сайт под управлением Joomla
  • Необходимо закрыть паролем доступ к админке
  • Статику отдаём средствами самого nginx
  • Динамику обрабатываем через php-fpm
  • Необходимо избавиться от index.php в адресе
  • Необходим редирект с www на без www

В результате сайт начинает просто летать по сравнению с LAMP.

Конфигурация сайта на Joomla

Если наш сайт на Joomla, вставляем в конфиг сайта

public $memcache_server_host = 'unix:///var/run/memcached/mem.socket'; public $memcache_server_port = '0';

Конфигурация php

Основные настройки описаны в отдельной статье.

Проверяем, что unix-сокет php-fpm доступен для чтения и записи серверу nginx.

Настраиваем php.ini, выставляем в ноль переменную cgi.fix_pathinfo

Для примера мой вариант php.ini.

В примере особенно важно подчеркнуть

  • max_input_vars = 9000 (ибо у нас Joomla + JoomShopping)
  • short_open_tag = On (ибо не все пользуются полным тегом)
  • post_max_sixe = 90M (ибо мы собираемся закачивать через админку видео)
  • upload_max_filesixe = 90M (аналогично)
  • date.timezone = Europe/Moscow (живём по Москвоскому времени)

Конфигурация php-fpm

Редактируем общие настройки php-fpm: /etc/php-fpm.conf

Для примера мой вариант php-fpm.conf

Обратите внимание на значения в этом файле! Они отличаются от значений по умолчанию.

Далее настраиваем обработку виртуальных хостов. Вот пример моего файла php-fpm-child.conf для коммерческого сайта. Очень удобно все настройки выполнять в отдельных файлах.

Конфигурация httpd

Как я уже говорил, мы готовим машину к обслуживанию связки nginx + php-fpm. Поэтому от конфигурации веб-сервера Apache можно вообще отказаться: будем его конфигурировать, если он понадобится в будущем. На данный момент можно ограничиться сменой порта на любой, отличный от 80, я выбрал 8080, чтобы nginx мог обращаться на этот порт за динамическим контентом от Apache.

Конфигурация СУБД

Основные настройки описаны в отдельной статье, которая создавалась для mySQL, но справедлива для MariaDB.

Поехали...

Теперь всё готово, перезапускаем веб-окружение

systemctl restart nginx.service && systemctl restart php-fpm.service

Если у нас всё получилось, то можем заходить в админку и проверять, как работает наша система

Обратите внимание на строчку "Интерфейс между веб-сервером и PHP".

Поздравляю, всё получилось! В нашем распоряжении выскоэффективный веб-сервер.

Возможные ошибки

Если в результате запуска всех сервисов мы видим 502 Bad Gateway, значит скорее всего мы забыли определить владельца файлов сокета (советы из интернета тут просто поражают нелепостью!). Идём в /run и назначаем на файлы сокета владельца apache:apache.

drach.pro

НАСТРОЙКА APACHE В CENTOS 7

В CentOS служба apache называется httpd. Когда я только знакомился с этим дистрибутивом, мне было непривычно. В Freebsd и Debian, с которыми я до этого работал служба веб сервера называлась apache, хотя где-то я замечал, кажется во фрюхе, что файл конфигурации имеет имя httpd.conf. 

 

Теперь приступим к установке apache. В CentOS 7 это делается очень просто:

# yum install -y httpd

Добавляем apache в автозагрузку:

# systemctl enable httpd

Запускаем apache в CentOS 7:

# systemctl start httpd

Проверяем, запустился ли сервер:

# netstat -tulnp | grep httpd tcp6       0      0 :::80                   :::*                    LISTEN      21586/httpd

Все в порядке, повис на 80-м порту, как и положено.

Теперь нужно открыть 80-й порт в iptable.

Уже сейчас можно зайти по адресу http://ip-address и увидеть картинку:

Теперь займемся настройкой apache. Я предпочитаю следующую структуру веб хостинга:

/web раздел для размещения сайтов
/web/site1.ru/www директория для содержимого сайта
/web/site1.ru/logs директория для логов сайта

Создаем подобную структуру:

# mkdir /web && mkdir /web/site1.ru && mkdir /web/site1.ru/www && mkdir /web/site1.ru/logs

или

# mkdir -p /web/site1.ru/{www,logs}/ # chown -R apache. /web

Дальше редактируем файл конфигурации apache — httpd.conf по адресу /etc/httpd/conf. Первым делом проверим, раскомментированна ли строчка в самом конце:

IncludeOptional conf.d/*.conf

Если нет, раскомментируем и идем в каталог /etc/httpd/conf.d. Создаем там файл site1.ru.conf:

# mcedit /etc/httpd/conf.d/site1.ru.conf <VirtualHost *:80> ServerName site1.ru ServerAlias www.site1.ru DocumentRoot /web/site1.ru/www <Directory /web/site1.ru/www> Options FollowSymLinks AllowOverride All Require all granted </Directory> ErrorLog /web/site1.ru/logs/error.log CustomLog /web/site1.ru/logs/access.log common </VirtualHost>

Перезапуск apache в centos

Теперь делаем restart apache:

# systemctl restart httpd

Если возникли какие-то ошибки — смотрим лог apache /var/log/httpd/error_log. Если все в порядке, то проверим, нормально ли настроен наш виртуальный хост. Для этого создадим в папке /web/site1.ru/www файл index.html следующего содержания:

# mcedit /web/site1.ru/www/index.html <h2>Апач настроен!</h2> # chown apache. /web/site1.ru/www/index.html

Дальше в винде правим файл hosts, чтобы обратиться к нашему виртуальному хосту. Добавляем туда строчку:

192.168.1.5 site1.ru

где 192.168.1.5 ip адрес нашего веб сервера.

Теперь в браузере набираем адрес http://site1.ru. Если видим картинку:

значит все правильно настроили. Если какие-то ошибки, то идем смотреть логи. Причем в данном случае не общий лог httpd, а лог ошибок конкретного виртуального хоста по адресу /web/site1.ru/logs/error.log.

Сразу же обращу ваше внимание на настройку ротации логов виртуальных хостов. Частенько бывает, что если сразу не настроишь, потом забываешь. Но если сайт с хорошей посещаемостью, то логи будут расти стремительно и могут занять очень много места. Лучше настроить ротацию логов веб сервера сразу же после создания. Сделать это не сложно.

Чтобы настроить ротацию логов виртуальных хостов, необходимо отредактировать файл /etc/logrotate.d/httpd. Он создается во время установки apache и включает в себя настройку ротации стандартного расположения логов. А так как мы перенесли логи каждого виртуального хоста в индивидуальную папку, необходимо добавить эти папки в этот файл:

# mcedit /etc/logrotate.d/httpd /web/*/logs/*.log /var/log/httpd/*log { missingok notifempty sharedscripts delaycompress postrotate /bin/systemctl reload httpd.service > /dev/null 2>/dev/null || true endscript }

Мы добавили одну строку в самое начала файла. Теперь логи всех виртуальных хостов в папке /web будут ротироваться по общему правилу.

В принципе, простейший веб сервер уже готов и им можно пользоваться создавая сайты со статическим содержимым, которым достаточно поддержки только html.

mozgovoy.in.ua

Настройка web сервера в CentOS 7

егодня займемся поднятием одной из наиболее востребованных ролей любого linux сервера, которые занимают в этом функциональном сегменте лидирующую роль. Настройка web сервера CentOS 7 на базе связки популярного http сервера apache, интерпретатора php и сервера баз данных mysql, или коротко — установка lamp. Данная связка является самой популярной конфигурацией на сегодняшний день среди веб хостинга. Хотя последнее время ей на пятки наступает та же компания, но на базе nginx, возможно уже и опередила, точных данных у меня нет на этот счет.

 

Web сервер на CentOS 7

Итак, наш веб сервер centos будет состоять из трех основных компонентов — http сервера apache, интерпретатора языка программирования php и сервера баз данных mysql. Познакомимся немного с каждым из них:

  1. Apache — http сервер или просто веб сервер апач. Является кросплатформенным ПО, поддерживающим практически все популярные операционные системы, в том числе и Windows. Ценится прежде всего за свою надежность и гибкость конфигурации, которую можно существенно расширить благодаря подключаемым модулям, которых существует великое множество. Из недостатков отмечают большую требовательность к ресурсам, по сравнению с другими серверами. Держать такую же нагрузку, как, к примеру, nginx, apache не сможет при схожих параметрах железа.
  2. PHP — язык программирования общего назначения, который чаще всего применяется в веб разработке. На сегодняшний день это самый популярный язык в этой области применения. Поддерживается практически всеми хостинг-провайдерами.
  3. Mysql — система управления базами данных. Завоевала свою популярность в среде малых и средних приложений, которых очень много в вебе. Так что, как и php, на сегодняшний день является самой популярной бд, использующейся на веб сайтах. Поддерживается большинством хостингов. В CentOS вместо mysql устанавливается mariadb — ответвление mysql. Они полностью совместимы, возможен в любой момент переход с одной субд на другую и обратно. Последнее время я встречал информацию, что mariadb пошустрее работает mysql и люди потихоньку перебираются на нее. На практике мне не довелось это наблюдать, так как никогда не работал с нагруженными базами данных. А в обычных условиях разница не заметна.

Хочу сразу уточнить, что разбираю базовую дефолтную настройку. Для улучшения быстродействия, повышения надежности и удобства пользования нужно установить еще несколько инструментов, о чем я расскажу отдельно. В общем случае для организации веб сервера будет достаточно того, что есть в этой статье.

Если у вас еще нет сервера, то вам надо выполнить установку CentOS 7. А если сервер уже установлен, то не забудьте его настроить. Рекомендую обратить внимание именно на настройку, так как там много полезной информации, которую в рамках этой статьи я не даю — обновление системы, настройка фаервола, установка редактора и многое другое.

Настройка apache в CentOS 7

В CentOS служба apache называется httpd. Когда я только знакомился с этим дистрибутивом, мне было непривычно. В Freebsd и Debian, с которыми я до этого работал служба веб сервера называлась apache, хотя где-то я замечал, кажется во фрюхе, что файл конфигурации имеет имя httpd.conf. До сих пор я не знаю, почему распространились оба эти названия. Был бы рад, если бы со мной кто-то поделился информацией на этот счет в комментариях.

Теперь приступим к установке apache. В CentOS 7 это делается очень просто:

# yum install -y httpd

Добавляем apache в автозагрузку:

# systemctl enable httpd

Запускаем apache в CentOS 7:

# systemctl start httpd

Проверяем, запустился ли сервер:

# netstat -tulnp | grep httpd tcp6       0      0 :::80                   :::*                    LISTEN      21586/httpd

Все в порядке, повис на 80-м порту, как и положено. Уже сейчас можно зайти по адресу http://ip-address и увидеть картинку:

Теперь займемся настройкой apache. Я предпочитаю следующую структуру веб хостинга:

/web раздел для размещения сайтов
/web/site1.ru/www директория для содержимого сайта
/web/site1.ru/logs директория для логов сайта

Создаем подобную структуру:

# mkdir /web && mkdir /web/site1.ru && mkdir /web/site1.ru/www && mkdir /web/site1.ru/logs # chown -R apache. /web

Дальше редактируем файл конфигурации apache — httpd.conf по адресу /etc/httpd/conf. Первым делом проверим, раскомментированна ли строчка в самом конце:

IncludeOptional conf.d/*.conf

Если нет, раскомментируем и идем в каталог /etc/httpd/conf.d. Создаем там файл site1.ru.conf:

# mcedit /etc/httpd/conf.d/site1.ru.conf <VirtualHost *:80> ServerName site1.ru ServerAlias www.site1.ru DocumentRoot /web/site1.ru/www <Directory /web/site1.ru/www> Options FollowSymLinks AllowOverride All Require all granted </Directory> ErrorLog /web/site1.ru/logs/error.log CustomLog /web/site1.ru/logs/access.log common </VirtualHost>

Перезапуск apache в centos

Теперь делаем restart apache:

# systemctl restart httpd

Если возникли какие-то ошибки — смотрим лог apache /var/log/httpd/error_log. Если все в порядке, то проверим, нормально ли настроен наш виртуальный хост. Для этого создадим в папке /web/site1.ru/www файл index.html следующего содержания:

# mcedit /web/site1.ru/www/index.html <h2>Апач настроен!</h2> # chown apache. /web/site1.ru/www/index.html

Дальше в винде правим файл hosts, чтобы обратиться к нашему виртуальному хосту. Добавляем туда строчку:

192.168.1.25 site1.ru

где 192.168.1.25 ip адрес нашего веб сервера.

Теперь в браузере набираем адрес http://site1.ru. Если видим картинку:

значит все правильно настроили. Если какие-то ошибки, то идем смотреть логи. Причем в данном случае не общий лог httpd, а лог ошибок конкретного виртуального хоста по адресу /web/site1.ru/logs/error.log.

Сразу же обращу ваше внимание на настройку ротации логов виртуальных хостов. Частенько бывает, что если сразу не настроишь, потом забываешь. Но если сайт с хорошей посещаемостью, то логи будут расти стремительно и могут занять очень много места. Лучше настроить ротацию логов веб сервера сразу же после создания. Сделать это не сложно.

Чтобы настроить ротацию логов виртуальных хостов, необходимо отредактировать файл /etc/logrotate.d/httpd. Он создается во время установки apache и включает в себя настройку ротации стандартного расположения логов. А так как мы перенесли логи каждого виртуального хоста в индивидуальную папку, необходимо добавить эти папки в этот файл:

# mcedit /etc/logrotate.d/httpd /web/*/logs/*.log /var/log/httpd/*log { missingok notifempty sharedscripts delaycompress postrotate /bin/systemctl reload httpd.service > /dev/null 2>/dev/null || true endscript }

Мы добавили одну строку в самое начала файла. Теперь логи всех виртуальных хостов в папке /web будут ротироваться по общему правилу.

В принципе, простейший веб сервер уже готов и им можно пользоваться. Но вряд ли сейчас найдутся сайты со статическим содержимым, которым достаточно поддержки только html. Так что продолжим нашу настройку.

Если вам необходимо организовать работу сайта по протоколу https, то воспользуйтесь руководством по настройке ssl в apache.

Установка php в CentOS 7

Для поддержки динамического содержимого сайтов выполним следующий шаг. Установим php в CentOS 7:

# yum install -y php

И следом еще несколько полезных компонентов. Установим популярные модули для php:

# yum install -y php-mysql php-mbstring php-mcrypt php-devel php-xml php-gd

Выполним перезапуск apache:

# systemctl restart httpd

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

# mcedit /web/site1.ru/www/index.php <?php phpinfo(); ?> # chown apache. /web/site1.ru/www/index.php

Заходим по адресу http://site1.ru/index.php

Вы должны увидеть вывод информации о php. Если что-то не так, возникли какие-то ошибки, смотрите лог ошибок виртуального хоста, php ошибки будут тоже там.

Где лежит php.ini

После установки часто возникает вопрос, а где хранятся настройки php? Традиционно они находятся в едином файле настроек. В CentOS php.ini лежит в /etc, прямо в корне. Там можно редактировать глобальные настройки для все виртуальных хостов. Персональные настройки каждого сайта можно сделать отдельно в файле конфигурации виртуального хоста, который мы сделали раньше. Давайте добавим туда несколько полезных настроек:

# mcedit /etc/httpd/conf.d/site1.ru.conf

Добавляем в самый конец, перед </VirtualHost>

php_admin_value date.timezone 'Europe/Moscow' php_admin_value max_execution_time 60 php_admin_value upload_max_filesize 30M

Для применения настроек нужно сделать restart apache. Теперь в выводе phpinfo можно увидеть изменение настроек.

Обновление до php 5.6 в CentOS 7

В нашем примере мы установили на CentOS 7 php 5.4 из стандартного репозитория. А что делать, если нам нужна более новая версия, например php 5.6? В таком случае нужно выполнить обновление php.

Для этого подключим remi репозиторий:

# wget http://rpms.remirepo.net/enterprise/remi-release-7.rpm # rpm -Uvh remi-release-7*.rpm

Теперь обновляем php 5.4 до php 5.6:

# yum --enablerepo=remi,remi-php56 install php php-common php-mysql php-mbstring php-mcrypt php-devel php-xml php-gd

Перезапускаем apache:

# systemctl restart httpd

И идем смотреть вывод phpinfo — http://site1.ru/index.php

Отлично, мы обновили php до версии 5.6.

Установка MySQL в CentOS 7

Как я уже писал ранее, сейчас все большее распространение получает форк mysql — mariadb. Она имеет полную совместимость с mysql, так что можно смело пользоваться. Я предпочитаю использовать именно ее.

Устанавливаем mariadb на CentOS 7:

# yum install -y mariadb mariadb-server

Добавляем mariadb в автозапуск:

# systemctl enable mariadb.service

Запускаем mariadb:

# systemctl start mariadb

Проверяем, запустилась или нет:

# netstat -tulnp | grep mysqld tcp        0      0 0.0.0.0:3306            0.0.0.0:*               LISTEN      22276/mysqld

Обращаю внимание, что она даже в системе отображается как сервис mysqld. Теперь запускаем стандартный скрипт настройки безопасности:

# /usr/bin/mysql_secure_installation

Не буду приводить весь вывод работы этого скрипта, там все достаточно просто и понятно. Сначала задаем пароль для root (текущий пароль после установки пустой), потом удаляем анонимных пользователей, отключаем возможность подключаться root удаленно, удаляем тестового пользователя и базу.

Файл настроек mysql/mariadb лежит в /etc/my.cnf. Для обычной работы достаточно настроек по-умолчанию. Но если вы решите изменить их, не забудьте перезапустить службу баз данных.

Перезапуск mariadb/mysql в CentOS 7:

# systemctl restart mariadb

На этом все. Базовый функционал web сервера на CentOS 7 настроен.

Если вам нужен phpmyadmin воспользуйтесь моим подробным руководством по установке и настройке phpmyadmin на centos 7.

1.alhom.ru