Как установить Apache 2.4.x, MariaDB 10.x и PHP 7.x на Ubuntu 16.04

При развертывании веб-сайта или веб-приложения наиболее распространенным решением для этого является настройка стека LAMP, состоящего из Linux, Apache, MySQL и PHP.

В этой статье мы узнаем, как настроить современный стек LAMP, установив последние стабильные выпуски Apache 2.4.x, MariaDB 10.x и PHP 7.x на Ubuntu 16.04.

Предпосылки

Шаг 1: Установите Apache 2.4.x

Установите последнюю стабильную версию Apache 2.4.x, используя следующую команду:

sudo apt-get install apache2 -y

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

apache2 -v

Вывод должен напоминать:

Server version: Apache/2.4.18 (Ubuntu)
Server built:   2016-07-14T12:32:26

В производственной среде вы захотите удалить страницу приветствия Ubuntu Apache по умолчанию:

sudo mv /var/www/html/index.html /var/www/html/index.html.bak

В целях безопасности вы должны запретить Apache предоставлять файлы и каталоги в корневом веб-каталоге /var/www/htmlпосетителям:

sudo cp /etc/apache2/apache2.conf /etc/apache2/apache2.conf.bak
sudo sed -i "s/Options Indexes FollowSymLinks/Options FollowSymLinks/" /etc/apache2/apache2.conf

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

Запустите службу Apache и запустите ее при загрузке системы:

sudo systemctl start apache2.service
sudo systemctl enable apache2.service

Шаг 2: Установите MariaDB 10.x

На момент написания этой статьи текущая стабильная версия MariaDB 10.1. Вы можете использовать следующие команды для установки MariaDB 10.1 в вашей системе Ubuntu 16.04 x64.

Настройте систему apt repo:

sudo apt-get install software-properties-common
sudo apt-key adv --recv-keys --keyserver hkp://keyserver.ubuntu.com:80 0xF1656F24C74CD1D8
sudo add-apt-repository 'deb [arch=amd64,i386,ppc64el] http://mirror.jmu.edu/pub/mariadb/repo/10.1/ubuntu xenial main'

Установите MariaDB:

sudo apt update -y
sudo apt install -y mariadb-server

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

Установив MariaDB, вы можете подтвердить установку:

mysql -V

Вывод должен быть похож на:

mysql  Ver 15.1 Distrib 10.1.22-MariaDB, for debian-linux-gnu (x86_64) using readline 5.2

Запустите сервис MariaDB:

sudo systemctl start mariadb.service
sudo systemctl enable mariadb.service

Безопасная установка MariaDB:

sudo /usr/bin/mysql_secure_installation

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

Enter current password for root (enter for none): <Enter>
Set root password? [Y/n]: Y
New password: <your-MariaDB-root-password>
Re-enter new password: <your-MariaDB-root-password>
Remove anonymous users? [Y/n]: Y
Disallow root login remotely? [Y/n]: Y
Remove test database and access to it? [Y/n]: Y
Reload privilege tables now? [Y/n]: Y

Примечание. Обязательно замените его <your-MariaDB-root-password>собственным корневым паролем MariaDB.

Таким образом, MariaDB 10.1 была надежно установлена ​​в вашей системе. В будущем вы можете настроить назначенных пользователей и базы данных для своих веб-приложений следующим образом:

Войдите в оболочку MySQL как root:

mysql -u root -p

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

Создайте базу данных MariaDB webapp, пользователя webappuserбазы данных и пароль пользователя базы данных yourpassword:

CREATE DATABASE webapp;
CREATE USER 'webappuser'@'localhost' IDENTIFIED BY 'yourpassword';
GRANT ALL PRIVILEGES ON webapp.* TO 'webappuser'@'localhost' IDENTIFIED BY 'yourpassword' WITH GRANT OPTION;
FLUSH PRIVILEGES;
EXIT;

При необходимости вы можете настроить MariaDB, просмотрев и отредактировав основной файл конфигурации MariaDB /etc/mysql/my.cnf:

sudo cp /etc/mysql/my.cnf /etc/mysql/my.cnf.bak
sudo vi /etc/mysql/my.cnf

Не забудьте перезапустить сервис MariaDB, если вы сделаете какие-либо изменения в этом файле:

sudo systemctl restart mariadb.service

Шаг 3: Установите PHP 7.0 или 7.1

При работе с PHP 7.x, пожалуйста, обратитесь к другой статье Vultr, которая подробно описывает этот процесс.

Шаг 4: Настройте брандмауэр UFW

По умолчанию брандмауэр UFW в Ubuntu 16.04 неактивен. Вы должны включить брандмауэр UFW для повышения безопасности:

sudo ufw app list
sudo ufw allow OpenSSH
sudo ufw allow in "Apache Full"
sudo ufw enable

Вот и все. После выполнения описанных выше процедур стек LAMP должен был быть запущен в вашей системе Ubuntu 16.04. Затем вы можете развернуть свое собственное веб-приложение на основе стека LAMP. Наслаждайся этим!

Оставить комментарий

Изучение 26 методов анализа больших данных: часть 1

Изучение 26 методов анализа больших данных: часть 1

Изучение 26 методов анализа больших данных: часть 1

Функциональные возможности уровней эталонной архитектуры больших данных

Функциональные возможности уровней эталонной архитектуры больших данных

Прочтите блог, чтобы узнать о различных уровнях архитектуры больших данных и их функциях самым простым способом.

6 невероятных фактов о Nintendo Switch

6 невероятных фактов о Nintendo Switch

Многие из вас знают Switch, который выйдет в марте 2017 года, и его новые функции. Для тех, кто не знает, мы подготовили список функций, которые делают «Switch» обязательным гаджетом.

Технические обещания, которые все еще не выполнены

Технические обещания, которые все еще не выполнены

Вы ждете, когда технологические гиганты выполнят свои обещания? проверить, что осталось недоставленным.

Как ИИ может вывести автоматизацию процессов на новый уровень?

Как ИИ может вывести автоматизацию процессов на новый уровень?

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

Технологическая сингулярность: далекое будущее человеческой цивилизации?

Технологическая сингулярность: далекое будущее человеческой цивилизации?

По мере того, как наука развивается быстрыми темпами, принимая на себя большую часть наших усилий, также возрастает риск подвергнуться необъяснимой сингулярности. Прочтите, что может значить для нас необычность.

CAPTCHA: как долго она может оставаться жизнеспособным методом различения между человеком и ИИ?

CAPTCHA: как долго она может оставаться жизнеспособным методом различения между человеком и ИИ?

CAPTCHA стало довольно сложно решать пользователям за последние несколько лет. Сможет ли он оставаться эффективным в обнаружении спама и ботов в ближайшем будущем?

Телемедицина и удаленное здравоохранение: будущее уже здесь

Телемедицина и удаленное здравоохранение: будущее уже здесь

Что такое телемедицина, дистанционное здравоохранение и их влияние на будущее поколение? Это хорошее место или нет в ситуации пандемии? Прочтите блог, чтобы узнать мнение!

Вы когда-нибудь задумывались, как хакеры зарабатывают деньги?

Вы когда-нибудь задумывались, как хакеры зарабатывают деньги?

Возможно, вы слышали, что хакеры зарабатывают много денег, но задумывались ли вы когда-нибудь о том, как они зарабатывают такие деньги? Давайте обсудим.

Обновление дополнения к macOS Catalina 10.15.4 вызывает больше проблем, чем решает

Обновление дополнения к macOS Catalina 10.15.4 вызывает больше проблем, чем решает

Недавно Apple выпустила macOS Catalina 10.15.4, дополнительное обновление для исправления проблем, но похоже, что это обновление вызывает больше проблем, приводящих к поломке компьютеров Mac. Прочтите эту статью, чтобы узнать больше