Установка LEMP · 7 min read · Oct 12, 2025
Как установить Nginx с PHP и MySQL (LEMP стек) на Ubuntu 20.04 LTS

Nginx (произносится как “engine x”) — это бесплатный, открытый, высокопроизводительный HTTP-сервер. Nginx известен своей высокой скоростью, стабильностью, богатым набором функций, простой конфигурацией и низким потреблением ресурсов. Этот учебник показывает, как установить Nginx на сервер Ubuntu 20.04 LTS с поддержкой PHP 7.4 (через PHP-FPM) и поддержкой MySQL (LEMP = Linux + Nginx (произносится как “engine x”) + MySQL + PHP).
Предварительные условия
- Сервер Ubuntu 20.04 LTS
- Привилегии root
Что мы будем делать?
- Установить Nginx
- Установить MySQL
- Установить PHP-FPM
- Настроить Nginx и PHP-FPM
- Установить PhpMyAdmin
- Настроить PhpMyAdmin
- Тестирование
Шаг 1 - Установка Nginx
Nginx или engine x — это высокопроизводительный HTTP и прокси-сервер с низким потреблением памяти. Большинство крупных веб-сайтов, таких как Netflix, Pinterest, CloudFlare, GitHub, используют Nginx.
На этом шаге мы установим веб-сервер Nginx из репозитория Ubuntu.
Обновите все репозитории на системе Ubuntu и установите пакеты Nginx, используя команду apt ниже.
sudo apt update
sudo apt install nginxПосле завершения установки запустите службу Nginx и включите ее, чтобы она запускалась каждый раз при загрузке системы.
systemctl start nginx
systemctl enable nginxТеперь установка веб-сервера Nginx завершена, проверьте службу Nginx, используя следующую команду.
systemctl status nginxНиже приведен результат, который вы получите.

Также проверьте HTTP-порт на системе Ubuntu и убедитесь, что он используется службой Nginx.
ss -plt4Ниже приведен результат, который вы получите.
В результате протокол HTTP используется службой Nginx.
Далее мы обеспечим безопасность нашей установки Nginx с помощью брандмауэра UFW.
Добавьте протоколы HTTP и HTTPS в конфигурацию брандмауэра UFW, используя следующую команду.
for fw in ssh http https
do
ufw allow $fw
doneТеперь включите брандмауэр UFW и проверьте его статус.
ufw enable
ufw status numberedИ протоколы HTTP и HTTPS были добавлены в конфигурацию брандмауэра UFW.

Шаг 2 - Установка MySQL
MySQL — это самая популярная система управления реляционными базами данных (RDBMS) с открытым исходным кодом, созданная корпорацией Oracle. Это центральный компонент LEMP стека, и мы установим последнюю версию MySQL из репозитория Ubuntu.
Установите MySQL, используя команду apt ниже.
sudo apt install mysql-server mysql-clientПосле завершения установки MySQL запустите службу MySQL и включите ее, чтобы она запускалась каждый раз при загрузке системы.
systemctl start mysql
systemctl enable mysqlТеперь проверьте службу MySQL, используя команду ниже.
systemctl status mysqlСлужба MySQL работает.

Далее мы настроим пароль root для сервера MySQL.
Запустите команду ‘mysql_secure_installation’ ниже.
mysql_secure_installationТеперь вам будет предложено следующее конфигурирование, и убедитесь, что вы вводите свой надежный пароль для пользователя root MySQL.
Press y|Y for Yes, any other key for No: Press Enter
New password:
Re-enter new password:
Remove anonymous users? (Press y|Y for Yes, any other key for No) : Y
Disallow root login remotely? (Press y|Y for Yes, any other key for No) : Y
Remove test database and access to it? (Press y|Y for Yes, any other key for No) : Y
Reload privilege tables now? (Press y|Y for Yes, any other key for No) : YИ пароль root MySQL был настроен.
В результате установка и настройка базы данных MySQL на Ubuntu 20.04 завершены.
Шаг 3 - Установка и настройка PHP-FPM
PHP-FPM или FastCGI Process Manager — это альтернатива старому PHP FastCGI, которая предоставляет дополнительные функции и улучшения скорости. Он хорошо подходит для малых и крупных сайтов, основанных на языке программирования PHP.
На этом шаге мы установим стандартный PHP7.4-FPM с некоторыми дополнительными расширениями, необходимыми для PHPMyAdmin.
Установите PHP-FPM, используя команду ниже.
sudo apt install php-fpm php-cli php-curl php-mysql php-curl php-gd php-mbstring php-pear -yПосле завершения установки PHP-FPM перейдите в каталог ‘/etc/php/7.4/fpm’ и отредактируйте конфигурацию php.ini с помощью редактора vim.
cd /etc/php/7.4/fpm/
vim php.iniРаскомментируйте следующую конфигурацию и измените значение на ‘0’.
cgi.fix_pathinfo = 0Сохраните и закройте.
Теперь запустите службу PHP7.4-FPM и включите ее, чтобы она запускалась каждый раз при загрузке системы.
systemctl start php7.4-fpm
systemctl enable php7.4-fpmСлужба PHP-FPM работает, проверьте это, используя следующую команду.
systemctl status php7.4-fpmНиже приведен результат, который вы получите.

По умолчанию PHP-FPM работает под сокет-файлом, проверьте это, используя команду ss ниже.
ss -pl | grep phpНиже приведен ответ, который вы получите.
u_str LISTEN 0 511 /run/php/php7.4-fpm.sock 67702 * 0И установка PHP-FPM 7.4 на Ubuntu 20.04 завершена.
Шаг 4 - Настройка Nginx и PHP-FPM
На этом шаге мы настроим веб-сервер Nginx и PHP-FPM.
Перейдите в каталог конфигурации ‘/etc/nginx’ и отредактируйте файл ‘nginx.conf’ с помощью vim или nano.
cd /etc/nginx/
vim nginx.confРаскомментируйте следующую строку, чтобы скрыть версию Nginx.
server_tokens off;Сохраните и закройте.
Далее отредактируйте конфигурацию виртуального хоста ‘default’ в каталоге ‘sites-available’.
vim sites-available/defaultРаскомментируйте строку PHP, показанную ниже, и измените строку сокет-файла.
location ~ \.php$ {
include snippets/fastcgi-php.conf;
#
# # С php-fpm (или другими unix-сокетами):
fastcgi_pass unix:/run/php/php7.4-fpm.sock;
# # С php-cgi (или другими tcp-сокетами):
# fastcgi_pass 127.2.0.1:9000;
}Сохраните и закройте.
Проверьте конфигурацию Nginx и убедитесь, что ошибок нет, затем перезапустите службу.
nginx -t
systemctl restart nginxВ результате настройка Nginx и PHP-FPM завершена.

Шаг 5 - Установка phpMyAdmin
PhpMyAdmin — это приложение на PHP для управления базами данных MySQL или MariaDB из веб-браузера. На этом шаге мы установим и настроим PHPMyAdmin в рамках LEMP (Linux, Nginx, MySQL и PHP-FPM) стека.
Установите PHPMyAdmin, используя команду apt ниже.
sudo apt install phpmyadminВо время установки вас спросят о конфигурации веб-сервера для phpmyadmin.
Выберите опцию none и переместите курсор к ‘ OK ‘.

Для конфигурации базы данных и пользователя phpmyadmin выберите ‘ Yes ‘.
И введите новый ‘НАДЕЖНЫЙ’ пароль администратора PHPMyAdmin, например ‘Hakaselabs001@#’.

Повторите пароль ‘Hakaselabs001@#’.

И установка phpMyAdmin на Ubuntu 20.04 завершена.
Шаг 6 - Настройка phpMyAdmin с Nginx и MySQL
После установки phpmyadmin нам нужно настроить phpmyadmin для работы под веб-сервером Nginx и настроить доступ пользователя MySQL к phpmyadmin. Чтобы запустить PHPMyAdmin под веб-сервером Nginx, нам нужно добавить конфигурацию в файл конфигурации виртуального хоста.
Настройка phpMyAdmin с веб-сервером Nginx
Теперь перейдите в каталог конфигурации ‘/etc/nginx’ и отредактируйте файл виртуального хоста по умолчанию.
cd /etc/nginx/sites-available/
vim defaultВставьте следующую конфигурацию Nginx для PHPMyAdmin внутри фигурных скобок ‘server {…}’.
location /phpmyadmin {
root /usr/share/;
index index.php;
try_files $uri $uri/ =404;
location ~ ^/phpmyadmin/(doc|sql|setup)/ {
deny all;
}
location ~ /phpmyadmin/(.+\.php)$ {
fastcgi_pass unix:/run/php/php7.4-fpm.sock;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
include snippets/fastcgi-php.conf;
}
}Сохраните и выйдите.
Проверьте конфигурацию nginx и убедитесь, что ошибок нет, затем перезапустите службу nginx.
nginx -t
systemctl reload nginxИ мы добавили конфигурацию Nginx для нашей установки phpMyAdmin, она доступна по пути URL как ‘http://server-ip/phpmyadmin’.

Разрешить пользователю phpMyAdmin доступ к базам данных
Для этого учебника мы будем использовать пользователей MySQL, не являющихся root, для PHPMyAdmin. Мы создадим нового пользователя и предоставим все привилегии всех баз данных на сервере этому пользователю.
Войдите в оболочку MySQL, используя следующую команду.
mysql -u root -pТеперь создайте нового пользователя MySQL ‘hakase’ и предоставьте все привилегии базы данных.
create user hakase@'localhost' identified by 'Hakaselabs001@#';
grant all privileges on *.* to hakase@'localhost';
flush privileges;Теперь введите ‘exit’, чтобы выйти из оболочки MySQL.
exitВ результате мы создали нового пользователя MySQL для phpMyAdmin.
Шаг 7 - Тестирование
На этом шаге мы протестируем нашу конфигурацию LEMP стека и phpMyAdmin.
Тест PHP файла
Перейдите в каталог ‘/var/www/html’ и создайте новый скрипт ‘info.php’ с помощью редактора vim.
cd /var/www/html
vim info.phpВставьте следующий скрипт в него.
Сохраните и закройте.
Затем откройте веб-браузер и введите IP-адрес вашего сервера, за которым следует путь к вашему скрипту ‘info.php’.
Ниже приведен результат, который вы получите.

В результате мы получили детальную конфигурацию нашего PHP-FPM 7.4 на сервере Ubuntu 20.04, и PHP-скрипт работает на нашем сервере LEMP Stack.
Тест phpMyAdmin
Чтобы протестировать нашу установку phpMyAdmin, введите IP-адрес вашего сервера, за которым следует путь ‘phpmyadmin’ в URL.
И вы получите страницу входа phpMyAdmin.

Чтобы войти в phpMyAdmin, введите пользователя, которого мы создали выше. Пользователь ‘hakase’ с паролем ‘Hakaselabs001@#’, затем нажмите кнопку ‘ Go ‘.
И вы получите панель управления phpMyAdmin, как показано ниже.

phpMyAdmin работает в среде LEMP Stack.
В результате установка и настройка LEMP Stack на Ubuntu 20.04 успешно завершены.
Get new posts in your inbox
No spam. Unsubscribe anytime.