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

Nginx (произносится как “engine x”) — это бесплатный, открытый, высокопроизводительный HTTP-сервер. Nginx известен своей стабильностью, богатым набором функций, простой конфигурацией и низким потреблением ресурсов. В этом руководстве показано, как установить Nginx на сервер Ubuntu 18.04 LTS с поддержкой PHP 7.2 (через PHP-FPM) и поддержкой MySQL (LEMP = L inux + nginx (произносится как “ e ngine x”) + M ySQL + P HP).
Предварительные требования
- Сервер Ubuntu 18.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.
Запустите команду ниже.
sudo apt install nginx -yПосле завершения установки запустите службу Nginx и включите ее для автоматического запуска при загрузке системы.
systemctl start nginx
systemctl enable nginxУстановка Nginx завершена.
Настроить брандмауэр
Рекомендуется включить брандмауэр на сервере.
Добавьте порты службы SSH и HTTP в конфигурацию брандмауэра.
Запустите команду UFW ниже.
ufw allow ssh
ufw allow httpТеперь запустите брандмауэр UFW и включите его для автоматического запуска при загрузке системы.
ufw enableВеб-сервер Nginx работает под брандмауэром UFW.

Шаг 2 - Установить MySQL
MySQL — это самая популярная система управления реляционными базами данных с открытым исходным кодом (RDBMS), созданная корпорацией Oracle. Это центральный компонент LEMP Stack, и мы установим последнюю версию MySQL из репозитория Ubuntu.
Установите MySQL с помощью команды apt ниже.
sudo apt install mysql-server mysql-client -yПосле завершения установки MySQL запустите службу MySQL и включите ее для автоматического запуска при загрузке системы.
systemctl start mysql
systemctl enable mysqlИ мы установили MySQL 5.7 на сервер Ubuntu 18.04.
Шаг 3 - Установить PHP-FPM
PHP-FPM или FastCGI Process Manager — это альтернатива старому PHP FastCGI, которая предоставляет дополнительные функции и улучшения скорости. Он хорошо подходит для небольших и крупных сайтов, основанных на языке программирования PHP.
На этом шаге мы установим PHP7.2-FPM с некоторыми дополнительными расширениями, необходимыми для phpmyadmin.
Установите PHP-FPM с помощью команды ниже.
sudo apt install php7.2 php7.2-fpm php7.2-cli php7.2-curl php7.2-mysql php7.2-curl php7.2-gd php7.2-mbstring php-pear -yТеперь запустите службу PHP-FPM и включите ее для автоматического запуска при загрузке системы после завершения всех установок.
systemctl start php7.2-fpm
systemctl enable php7.2-fpmPHP7.2-FPM работает на Ubuntu 18.04 под сокет-файлом, проверьте это с помощью команды netstat.
netstat -pl | grep phpШаг 4 - Настроить Nginx и PHP-FPM
На этом шаге мы настроим веб-сервер Nginx и PHP-FPM.
Настроить Nginx
Перейдите в каталог конфигурации ‘/etc/nginx’ и отредактируйте файл ‘nginx.conf’ с помощью vim или nano.
cd /etc/nginx/
vim nginx.confУберите комментарии с следующих строк.
keepalive_timeout 2;
server_tokens off;Сохраните файл конфигурации и выйдите из редактора.
Теперь отредактируйте файл виртуального хоста по умолчанию Nginx.
vim sites-available/defaultУберите комментарии с строки PHP, показанной ниже, и измените строку сокет-файла.
location ~ \.php$ {
include snippets/fastcgi-php.conf;
#
# # С php-fpm (или другими unix-сокетами):
fastcgi_pass unix:/var/run/php/php7.2-fpm.sock;
# # С php-cgi (или другими tcp-сокетами):
# fastcgi_pass 127.2.0.1:9000;
}Сохраните и выйдите.
Проверьте конфигурацию Nginx и убедитесь, что ошибок нет, затем перезапустите службу.
nginx -t
systemctl reload nginx
Настроить PHP-FPM
Перейдите в каталог ‘/etc/php/7.2’ и отредактируйте файл ‘php.ini’.
cd /etc/php/7.2/
vim fpm/php.iniУберите комментарии с строки ‘cgi.fix_pathinfo’ и измените значение на ‘0’.
cgi.fix_pathinfo=0Сохраните и выйдите.
Перезагрузите службу PHP-FPM.
systemctl reload php7.2-fpmИ мы завершили настройку веб-сервера Nginx и PHP-FPM.
Шаг 5 - Установить PhpMyAdmin
PhpMyAdmin — это приложение на PHP для управления базами данных MySQL или MariaDB из веб-браузера.
На этом шаге мы установим и настроим phpmyadmin в рамках стека LEMP (Linux, Nginx, MySQL и PHP-FPM).
Установите PHPMyAdmin с помощью команды apt ниже.
sudo apt install phpmyadmin -yВо время установки вам будет предложено выбрать конфигурацию веб-сервера для phpmyadmin.
Выберите опцию none и переместите курсор на ‘OK’.
Для конфигурации базы данных phpmyadmin выберите ‘Yes’.

И введите новый ‘СИЛЬНЫЙ’ пароль администратора phpmyadmin, например ‘Hakaselabs001@#’.
Повторите пароль ‘Hakaselabs001@#’.

И установка phpmyadmin завершена.
Шаг 6 - Настроить PhpMyAdmin
После установки phpmyadmin нам нужно настроить phpmyadmin для работы под веб-сервером Nginx и настроить доступ пользователя MySQL к phpmyadmin.
Настроить PhpMyAdmin с Nginx
Чтобы запустить phpmyadmin под веб-сервером Nginx, нам нужно добавить конфигурацию в файл конфигурации виртуального хоста.
Перейдите в каталог конфигурации ‘/etc/nginx’ и отредактируйте файл виртуального хоста по умолчанию.
cd /etc/nginx/
vim sites-available/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:/var/run/php/php7.2-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.
Настроить пользователя MySQL для PhpMyAdmin
В этом руководстве мы будем использовать пользователя MySQL, не являющегося root, для phpmyadmin. Мы создадим нового пользователя и предоставим ему все привилегии на базы данных внутри сервера.
Войдите в оболочку MySQL.
mysql -u root -pТеперь создайте нового пользователя с помощью следующих запросов MySQL.
create user hakase@'localhost' identified by 'Hakaselabs001@#';
grant all privileges on *.* to hakase@'localhost' identified by 'Hakaselabs001@#';
flush privileges;
exit;И мы создали нового пользователя для доступа к phpmyadmin.

Шаг 7 - Тестирование
Тестирование PHP файлов
Перейдите в корневой каталог веб-сервера ‘/var/www/html’ и создайте новый файл phpinfo.
cd /var/www/html/
vim info.phpВставьте скрипт phpinfo ниже.
Сохраните и выйдите.
Теперь откройте веб-браузер и введите IP-адрес сервера, как показано ниже. Замените IP на IP вашего сервера.
И ниже представлена вся информация о конфигурации сервера PHP.

Тестирование входа в PhpMyAdmin
В веб-браузере введите следующий URL phpmyadmin (замените IP на IP вашего сервера).
http://192.168.33.10/phpmyadmin/
На странице входа в phpmyadmin введите пользователя ‘hakase’ с паролем ‘Hakaselabs001@#’ и нажмите кнопку ‘Go’.

Теперь мы увидим панель управления phpmyadmin, как показано ниже.

Стек LEMP и PhpMyAdmin успешно установлены на Ubuntu 18.04 LTS.
Get new posts in your inbox
No spam. Unsubscribe anytime.