Быстрая установка стека LAMP в CentOS 8

Этот мануал поможет вам установить все компоненты стека LEMP на сервер CentOS 8. Поскольку сервер использует операционную систему Linux, первый компонент уже установлен. Мануал поможет вам установить остальное.

Хотя пакет MySQL доступен в репозитории CentOS 8, в этом мануале мы установим в стек LAMP систему управления базами данных MariaDB.

Расширенную версию данного мануала вы найдете здесь.

Требования

Для работы вам нужен сервер CentOS 8 с пользователем sudo. Настроить сервер можно согласно этому руководству.

1: Установка Apache и настройка брандмауэра

Установите пакет httpd:

sudo dnf install httpd

После завершения установки введите эту команду, чтобы включить и запустить сервер:

sudo systemctl start httpd

Если ранее вы включили брандмауэр firewalld, нужно разблокировать в нем сервис Apache. Следующая команда откроет порт 80 для HTTP-соединений на постоянной основе:

sudo firewall-cmd --permanent --add-service=http

Перезапустите брандмауэр, чтобы изменения вступили в силу:

sudo firewall-cmd --reload

Добавив новое правило брандмауэра, нужно проверить, работает ли сервер. Попробуйте открыть стандартную посадочную страницу в браузере по доменному имени или IP-адресу сервера.

http://server_domain_or_IP

На экране должна появиться стандартная посадочная страница Apache.

2: Установка MariaDB

MariaDB – это форк MySQL, разработанный сообществом.

Чтобы установить эту программу, введите:

sudo dnf install mariadb-server

Когда установка завершится, включите и запустите сервис MariaDB:

sudo systemctl start mariadb

Чтобы защитить установку MariaDB, можно запустить простой скрипт безопасности, который удалит потенциально рискованные настройки. Инициируйте скрипт:

sudo mysql_secure_installation

Сначала нужно указать root-пароль MariaDB. Это учетная запись администратора MariaDB, которая имеет повышенные привилегии. Вы установили MariaDB только что и еще не внесли никаких изменений, этого пароля пока у вас нет, поэтому просто нажмите Enter.

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

На остальные вопросы можно нажать Y и Enter. Это удалит анонимных пользователей и тестовые базы данных, отключит удалённый root логин и обновит текущие настройки MariaDB.

3: Установка PHP

Кроме PHP вам также понадобится дополнительный пакет php-mysqlnd, модуль, который позволяет PHP взаимодействовать с базами данных на основе MySQL.

Чтобы установить php и php-mysqlnd, используйте dnf:

sudo dnf install php php-mysqlnd

После установки нужно перезапустить Apache, чтобы включить модули PHP.

sudo systemctl restart httpd

Теперь стек полностью установлен. Давайте протестируем его работу.

4: Тестирование PHP

В CentOS 8 стандартная установка Apache автоматически создает корневой каталог /var/www/html. Вам не нужно редактировать конфигурацию Apache, чтобы PHP смог работать корректно.

Единственное изменение, которое нужно внести, – это поменять привилегии на корневой каталог. Следующая команда передаст права на стандартный корневой каталог Apache пользователю и группе по имени 8host (вместо этого условного имени вы должны указать в команде имя своего пользователя и группы).

sudo chown -R 8host.8host /var/www/html/

Давайте убедимся в том, что веб-сервер взаимодействует с PHP. Для этого нужно создать простой сценарий PHP, info.php. По умолчанию в этой системе используется редактор vi, но вы можете установить вместо него более простой редактор nano.

sudo dnf install nano

Создайте файл:

nano /var/www/html/info.php

На экране появится пустой файл. Поместите в него такой код:

<?php
phpinfo();

Сохраните и закройте файл.

Теперь попробуйте открыть его в браузере:

http://server_host_or_IP/info.php

На экране появится веб-страница, содержащая информацию о сервере. Если такая страница появилась, веб-сервер обслуживает файлы PHP.

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

rm /var/www/html/info.php

Заключение

Теперь на сервере CentOS 8 установлен программный стек LAMP – надёжная и гибкая платформа для развёртывания сайта или приложения. На этом этапе можно приступать к дальнейшей настойке сервера.

Читайте также:

Tags: , , , , ,