Введение

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

Более подробную версию этого обучающего руководства с подробным описанием каждого шага можно найти в статье Установка комплекта Linux, Apache, MySQL, PHP (LAMP) в CentOS 8.

Предварительные требования

php illustration for: Предварительные требования

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

Шаг 1 — Установка Apache

Установите пакет httpd с помощью следующей команды:

				
					
sudo dnf install httpd

				
			

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

				
					
sudo systemctl start httpd

				
			

Если брандмауэр firewalld активен, вам потребуется запустить следующую команду, чтобы разрешить внешний доступ к порту 80 (HTTP):

				
					
sudo firewall-cmd --permanent --add-service=<^>http<^>

				
			

Выполните перезапуск конфигурации брандмауэра, чтобы изменения вступили в силу:

				
					
sudo firewall-cmd --reload

				
			

После добавления нового правила брандмауэра вы можете проверить, запущен ли сервер, запросив доступ к публичному IP-адресу или доменному имени сервера из вашего веб-браузера. Страница будет выглядеть следующим образом:

Шаг 2 — Установка MariaDB

Теперь мы установим MariaDB, разработанную энтузиастами версию оригинального сервера MySQL от Oracle. Для установки данного ПО запустите следующую команду:

				
					
sudo dnf install mariadb-server

				
			

После завершения установки активируйте и запустите сервер MariaDB с помощью следующей команды:

				
					
sudo systemctl start mariadb

				
			

Чтобы повысить уровень безопасности вашего сервера базы данных, рекомендуется запустить скрипт безопасности, который устанавливается в комплекте с MariaDB. Запустите интерактивный скрипт с помощью следующей команды:

				
					
sudo mysql_secure_installation

				
			

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

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

Далее вы можете использовать клавиши Y и ENTER, чтобы принять ответы по умолчанию для всех последующих вопросов.

Шаг 3 — Установка PHP

Для установки пакетов php и php-mysqlnd с помощью диспетчера пакетов dnf выполните команду:

				
					
sudo dnf install php php-mysqlnd

				
			

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

				
					
sudo systemctl restart httpd

				
			

Шаг 4 — Тестирование PHP с помощью Apache

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

Единственное изменение, которое мы будем вносить, — это изменение параметров разрешений по умолчанию в корневой папке документов Apache. Следующая команда изменит владельца корневого документа Apache по умолчанию на пользователя и группу с именем <^>sammy<^>:

				
					
sudo chown -R &lt;^&gt;sammy&lt;^&gt;.&lt;^&gt;sammy&lt;^&gt; /var/www/html/

				
			

Теперь мы создадим тестовую страницу PHP, чтобы убедиться, что веб-сервер работает ожидаемым образом. Вначале нужно установить более удобный текстовый редактор nano, поскольку по умолчанию он не входит в комплект CentOS 8:

				
					
sudo dnf install nano

				
			

Создайте новый файл PHP с именем info.php в директории /var/www/html:

				
					
nano /var/www/html/&lt;^&gt;info.php&lt;^&gt;

				
			

Следующий код PHP будет отображать информацию о текущей среде PHP, которая запущена на сервере:

				
					
[label /var/www/html/info.php]

&lt;?php



phpinfo();

				
			

После завершения редактирования сохраните и закройте файл.

Чтобы подтвердить возможность отображения веб-сервером контента, сгенерированного скриптом PHP, откройте в браузере имя хоста или IP-адрес вашего сервера с суффиксом /info.php:

				
					
http://&lt;^&gt;server_host_or_IP&lt;^&gt;/info.php

				
			

Вы увидите приблизительно следующую страницу:

Другие обучающие руководства

Ниже представлены ссылки на более подробные материалы, связанные с настоящим обучающим руководством: