Ещё одна — потому что в Интернете существует уже 100500 таких инструкций. А чем мы хуже? Настраиваем легендарную связку Linux + Apache + MySQL + PHP + phpMyAdmin на чистой Ubuntu 18 старым дедовским способом. А потом посмотрим, что нам даёт инструмент Tasksel. Если Вы любите хардкор, то у нас есть инструкция по созданию WEB-сервера на основе FreeBSD.
Эта настройка подойдёт скорее для выполнения университетских лабораторных работ, нежели для продакшна. Но это тот минимум, который позволит использовать все перечисленные в заголовке компоненты.
Установка Apache 2.4
Перед началом всех нашим манипуляций обновим список пакетов
- Обновляем систему
sudo apt-get update sudo apt-get upgrade
- Устанавливаем Apache 2
sudo apt-get install apache2
- Проверяем, работает он или нет:
sudo service apache2 status
- И на всякий случай перейдём по адресу сервера в браузере. Если у Вас есть GUI, в любом браузере перейдите по адресу:
localhost
- Если увидите приветственную страницу Apache 2 — значит всё тип-топ.
Установка MySQL 5.7
- Сразу к делу:
sudo apt-get install mysql-server-5.7
- После проверим, работает он или нет
sudo service mysql status
- Если видим active (running), значит всё хорошо!
- Запускаем первоначальную настройку MySQL
sudo mysql_secure_installation
- Здесь никаких откровений: выбираем уровень сложности пароля (0, 1 или 2), вводим его два раза, затем везде ставим YES. Если нужна более тонкая настройка (пользователи, доступ с только localhost или с удалённых клиентов — необходимы другие инструкции).
- После этого зайдём внутрь:
mysql -u root -p
- На следующей строке введём пароль, который не будет видно, нажмём Enter.
- Если видите:
mysql>
- Значит всё хорошо.
- Ещё для проверки можно ввести:
show databases;
- нажать Enter и увидеть список встроенных баз данных.
- Для выхода наберём
exit
- и продолжим установку компонентов.
Установка PHP 7.2
- Устанавливаем требуемые пакеты:
sudo apt-get install php php-common php-mysql php-gd php-cli
- Дождавшись окончания, перейдём по пути:
cd /var/www/html
- Удалим файл index.html
rm index.html
- Добавим файл index.php
nano index.php
- Файл сразу откроется для редактирования.
- В этом файле наберём следующее:
<?php phpinfo(); ?>
- Закроем файл с сохранением, нажав Ctrl + X, введя Y и нажав после этого Enter.
- После этого в браузере обновим страницу на адресе localhost и увидим все настройки php. Не забудьте удалить или отредактировать этот файл после настройки!
Установка phpMyAdmin
- Добавим репозиторий с пакетом phpMyAdmin, если apt возвращает сообщение, что пакет phpMyAdmin не найден.
sudo add-apt-repository universe
- Установим необходимый пакет:
sudo apt install phpmyadmin
- В ходе установки будет выбор WEB-сервера, для которого мы устанавливаем phpMyAdmin. Выбираем Apache.
- Также надо будет пройти все вопросы утилиты для создания пользователя и пароля для доступа к phpMyAdmin.
- После этого откроем файл настроек Apache 2.4:
sudo nano /etc/apache2/apache2.conf
- Добавим в самом конце строку
Include /etc/phpmyadmin/apache.conf
- Закрываем файл с записью: Ctrl + X, затем Y и Enter.
- И перезагружаем Apache 2 для применения новой конфигурации:
sudo service apache2 restart
- Далее в браузере набираем наш адрес (у нас это localhost) и добавляем поддиректорию phpmyadmin, то есть адрес целиком будет таким:
http://localhost/phpmyadmin
- Готово!
Tasksel
Вся инструкция выше — это классика жанра. Мы выбрали компоненты, а затем их установили. Но не так давно появилось средство tasksel, которое позволяет устанавливать группы пакетов, связанные между собой какой-то целью. Например, наша цель — WEB-сервер.
Давайте посмотрим, как это работает и что мы получим в итоге.
- Если пакет Tasksel не установлен в Вашей системе, установим его!
sudo apt-get install tasksel
- Вводим команду
sudo tasksel install lamp-server
- и можем заниматься своими делами. Основные компоненты LAMP сервера (это Apache, MySQL, PHP) будут установлены в автоматическом режиме. PhpMyAdmin в этот пакет не входит, его надо будет поставить руками.
- После окончания, можем посмотреть, какие версии ПО у нас установлены. Для каждого компонента есть своя команда:
apache2 -v
mysql -v
php -v
- Готово! Дёшево и сердито! Ещё раз обратим Ваше внимание, что это только тестовый сервер. Сервер для реальной работы требует более тонкой настройки!