Как установить LEMP на Ubuntu
- Как создать пользователя
- Как установить и настроить Nginx
- Как установить MySQL на Ubuntu
- Как настроить PHP
- Как настроить Nginx и связать с PHP
- Как проверить настройки
В статье мы расскажем, как установить Nginx, MySQL и PHP на Ubuntu.
LEMP (Linux, Nginx, MySQL, PHP) — это набор ПО, который используется для развертывания сайтов и приложений. Он аналогичен LAMP, но в перечне компонентов есть одно отличие: в качестве веб-сервера используется Nginx вместо Apache.
Nginx — это веб-сервер с открытым исходным кодом, который имеет асинхронный механизм управления событиями. Это значит, что он не создает новые процессы для каждого запроса от клиента.
Как создать пользователя
1. Подключитесь к серверу по SSH.
2. Создайте нового пользователя:
adduser username
Вместо username укажите имя пользователя.
Далее задайте пароль пользователя.
3. Назначьте пользователю права sudo:
usermod -aG sudo username
Вместо username укажите имя пользователя.
Готово. Завершите сеанс под root и подключитесь под новым пользователем.
Как установить и настроить Nginx
1. Подключитесь к серверу по SSH.
2. Обновите репозиторий. Для этого поочередно выполните команды:
sudo apt update
sudo apt upgrade
3. Установите Nginx:
sudo apt install nginx
4. Откройте порты для подключения к серверу. Для протокола HTTP поочередно выполните команды:
sudo iptables -A INPUT -p tcp --dport 80 -j ACCEPT
sudo iptables-save
Для протокола HTTPS поочередно выполните команды:
sudo iptables -A INPUT -p tcp --dport 443 -j ACCEPT
sudo iptables-save
5. Проверьте настройки. Для этого в адресной строке введите IP-адрес вашего сервера. Если установка и настройка Nginx прошла корректно, на экране отобразится стартовая страница:
Готово, вы установили и настроили Nginx.
Как установить MySQL на Ubuntu
1. Подключитесь к серверу по SSH.
2. Установите MySQL:
sudo apt install mysql-server
3. Проверьте, как работает MySQL:
sudo systemctl status mysql
На экране появится вывод:
mysql.service - MySQL Community Server
Loaded: loaded (/lib/systemd/system/mysql.service; enabled; vendor preset: enabled)
Active: active (running) since Mon 2022-01-01 00:00:00 MSK; 1min 0s ago
Main PID: 2438 (mysqld)
Status: "Server is operational"
Tasks: 39 (limit: 1152)
Memory: 361.1M
CGroup: /system.slice/mysql.service
└─2438 /usr/sbin/mysqld
Чтобы вернуться в терминал, введите q.
4. Установите валидатор паролей:
sudo mysql_secure_installation
5. Введите степень сложности пароля:
MySQL на Ubuntu
После этого задайте пароль пользователя root.
Далее укажите y для следующих этапов:
- удаления анонимных пользователей,
- запрета удаленного подключения для root-пользователя,
- удаления тестовой базы данных,
- перезагрузки таблицы привилегий.
6. На этом этапе требуется настройка MySQL. Откройте консоль с помощью команды:
sudo mysql
7. Создайте пользователя баз данных:
CREATE USER 'username'@'localhost' IDENTIFIED BY 'password';
Где:
- username — имя пользователя БД,
- password — пароль пользователя БД.
8. Назначьте все привилегии новому пользователю:
GRANT ALL PRIVILEGES ON * . * TO 'username'@'localhost';
Вместо username укажите имя пользователя.
9. Сохраните изменения:
FLUSH PRIVILEGES;
10. Создайте базу данных:
CREATE DATABASE db_name;
Вместо db_name укажите имя базы данных.
11. Закройте консоль MySQL:
exit;
Готово, вы установили и настроили MySQL.
Как настроить PHP
1. Подключитесь к серверу по SSH.
2. Для работы на Ubuntu вам потребуются модули PHP-FPM и MYSQL-FPM. Установите их с помощью команды:
sudo apt install php-fpm php-mysql
3. Проверьте версию PHP на сервере:
php -v
На экране отобразится версия ПО:
4. Откройте конфигурационный файл PHP:
sudo nano /etc/php/X.X/fpm/php.ini
Вместо X.X укажите версию PHP, которая установлена на сервере.
5. Раскомментируйте параметр cgi.fix_pathinfo, убрав ; в начале строки. Установите значение 0:
Сохраните изменения с помощью сочетания клавиш Ctrl + O. Затем закройте файл комбинацией Ctrl + X.
6. Перезапустите PHP:
sudo systemctl restart phpX.X-fpm
Вместо X.X укажите версию PHP, которая установлена на сервере.
Как настроить Nginx и связать с PHP
1. Подключитесь к серверу по SSH.
2. Откройте конфигурационный файл:
sudo nano /etc/nginx/sites-available/default
3. В блоке server измените строки:
-
в директиве index укажите файл index.php,
-
в директиве server_name укажите домен или IP-адрес вашего сервера,
-
раскомментируйте строки в блоке location ~\.php$ кроме fastcgi_pass 127.0.0.1:9000;,
-
раскомментируйте строки в блоке location ~ /\.ht.
Установка PHP на Ubuntu
Сохраните изменения, нажав комбинацию Ctrl + O. Затем закройте файл при помощи сочетания клавиш Ctrl + X.
4. Проверьте конфигурационный файл на ошибки:
sudo nginx -t
Если файл настроен без ошибок, на экране появится сообщение:
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful
5. Перезагрузите Nginx:
sudo systemctl reload nginx
Готово, вы настроили связку Nginx с PHP.
Как проверить настройки
1. Подключитесь к серверу по SSH.
2. Выполните команду:
sudo bash -c 'echo "<?php phpinfo(); ?>" > /var/www/html/info.php'
3. В адресной строке введите 123.123.123.123/info.php. Вместо 123.123.123.123 укажите IP-адрес вашего сервера.
На экране появится информация о PHP:
Настройка PHP на Ubuntu
4. Из соображений безопасности после проверки необходимо удалить файл. Для этого выполните команду:
sudo rm /var/www/html/info.php
Готово, вы установили и настроили LEMP на Ubuntu.