Установка LEMP стека (Linux, Nginx, MySQL, PHP) на Ubuntu 16.04

В статье рассмотрен процесс настройки LEMP-стека на VPS под управлением операционной системы Ubuntu 16.04.

Что такое LЕMP

LEMP - это аналог популярного стека LAMP, используемого для разработки и развертывания веб-приложений. Традиционно LAMP состоит из Linux, Apache, MySQL и PHP. Благодаря своей модульной природе компоненты легко могут быть заменены. В LEMP Apache заменяется легким, но мощным Nginx, который может обеспечить более предсказуемую производительность при высоких нагрузках.

Apache vs Nginx

Apache:

Nginx:

Установка Nginx

Чтобы поставить Nginx для LEMP вам необходимо подключиться к VPS с ОС Ubuntu и исполнить следующие команды:

sudo apt-get update
sudo apt-get install nginx

Чтобы проверить установку сервера nginx, перейдите в любом браузере по следующей ссылке, указав IP-адрес вашего VDS:

http://<ip-адрес_сервера>/
Например: http://5.101.77.24/

Примечание: если у вас не получается подключиться, проверьте настройки FireWall, веб-сервер Nginx по умолчанию работает на порту 80, чтобы добавить правило выполните следующую пару команд:

iptables -A INPUT -p tcp --dport 80 -j ACCEPT
iptables-save

 

Как узнать IP-адрес сервера

Адрес сервера можно найти на вкладке «Состояние» страницы «Серверы» в панели управления.

Установка MySQL(MariaDB) на Ubuntu

MySQL — это система управления базами данных (СУБД), которая используется для организации и получения контента.

Сегодня в LEMP стеке MySQL заменяется на популярный аналог - MariaDB. MariaDB имеет те же возможности, что и MySQL, и при этом является полностью бесплатной.

Примечание: если вы предпочитаете использовать базу данных MySQL в Ubuntu или ваш проект работает именно с ней, вам нужно будет добавить необходимые репозитории и установить БД с помощью инструкции.

Установите пакеты из главного репозитория Ubuntu с помощью менеджера пакетов:

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

Здесь MariaDB попросит вас задать пароль супер-пользователя БД. Затем система попросит ответить на несколько вопросов (они служебные и на каждый из них без лишних проблем можно ответить Yes).

После этого конфигурирование базы данных завершено, и можно переходить к следующему шагу настройки LEMP стека — установке PHP.

Установка PHP на Ubuntu

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

В процессе установки потребуется 1 или 2 раза ответить ‘Yes’ на вопросы системы.

Модули PHP

Для повышения функциональности LEMP вы можете дополнительно поставить некоторые модули php. Посмотреть список доступных библиотек можно с помощью команды:

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

Если вы решите установить какой-либо из модулей, то это можно сделать с помощью специальной команды:


Например:

Настройка Nginx для работы с PHP и MySQL

Для настройки связи между PHP и MySQL в LEMP стеке для nginx необходимо установить дополнительные модули и внести изменения в конфигурационный файл:

С помощью текстового редактора, например vi, откройте файл конфигурации на редактирование:

Раскомментируйте (уберите символ “;” в начале строки) следующую переменную и присвойте ей значение 0:

Сохраните изменения и выйдите из текстового редактора.
Перезапустите модуль:

Настройка Nginx

С помощью текстового редактора, например vi, откройте файл конфигурации веб-сервера nginx:

Добавьте значение index.php к параметру index в начало, чтобы в первую очередь искались файлы с расширением php:

В качестве значения параметра server_name укажите доменное имя или ip-адрес сервера:

server_name домен_или_IP_адрес;
Например: server_name 125.221.12.11

Раскомментируйте следующие строки, которые отвечают за обработку PHP-запросов в nginx:

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

Чтобы изменения стали актуальны, нужно заново запустить веб-сервер nginx:

service nginx restart

Запуск

Чтобы удостовериться в том, что LEMP поставлен без ошибок, можно создать test-page на VPS.

Создаем файл с нужным расширением:

Внесите в него следующую строку и сохраните:

Затем сохранить и выйти.

Затем перейдите в браузере по следующей ссылке, указав IP-адрес вашего сервера: http://<IP-адрес_сервера>/info.php
Например: http://5.101.77.24/info.php

Ожидаемый результат:

 

 

Последнее обновление: 13.09.2022