FOSS-Tech

Free and Open Source Software Technologies.

Установка LEMP-сетка в Debian Bullseye (SID)

LEMP-стек — это набор программ использующихся для создания и обслуживания динамических сайтов. Аббревиатура LEMP расшифровывается как Linux Nginx (произносится как «энджинкс») MySQL PHP. Теперь мы можем приступать к установке!

Установка набора LEMP

Изначално у вас должны быть права суперпользователь или право использовать sudo.

Шаг 1. Устновка Nginx

Nginx — это современный веб-сервер который мы сейчас с лёгкостью установим. Все программное обеспечение будет взять с репозиториев Debian. (Но нужно подключить on-free и contrib):

$ sudo apt update
$ sudo apt install nginx

После установки Nginx будет автоматически настроен.

Если вы используете файрвол UFW, то вам нужно добавить порт 80 в исключение. Пока мы не настроили SSL нужно разрешить только порт 80:

$ sudo ufw allow 'Nginx HTTP'

После добавления правила вы можете попробовать перейти на ваш новый веб-сайт через домен, или если вы его ещё не приобрели, то через ваш публичный iP-адрес.

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

$ ip addr show eth0 | grep inet | awk '{ print $2; }' | sed 's/\/.*$//'

Введите полученный iP-адрес в строку браузера и перейдите по нему:

http://domain_or_ip

Если вы увидите страницу приветствия от Nginx, то вы настроили всё правильно!

Шаг 2. Установка MySQL

Теперь после установки нашего веб-сервера, вам нужно установить систему управления быками данных, к примеру ля использования CMS или др…

Для установки MySQL вы должны весле команду:

$ sudo apt install mysql-server

MySQL установлен, но ещё не настроен.

Для настройки безопасности MySQL введите команду:

$ sudo mysql_secure_installation

Скрипт предложит вам настроить VALIDATE PASSWORD PLUGIN, но я не советую его включать, так-как MySQL будет отклонять пароли не соответствующие критериям.

Нажмите клавишу «Y» для активации или любую другую для отклонения.

Затем вам будет предложено установить пароль ROOT:

Please set the password for root here.

New password:

Re-enter new password:

Для всего остального рекомендовано нажимать «Y» и «ENTER».

В системах Ubuntu с СУБД MySQL 5.7 (и более поздними версиями) для пользователя rootСУБД MySQL по умолчанию для аутентификации задан плагин auth_socket, а не пароль. Во многих случаях это обеспечивает более высокую безопасность и удобство, однако это также может осложнить ситуацию, если вам нужно предоставить доступ к пользователю внешней программе (например, phpMyAdmin).

Если использование плагина auth_socket для доступа к MySQL соответствует вашим рабочим процессам, вы можете перейти к шагу 3. Если же вы предпочитаете использовать пароль при подключении к MySQL в качестве пользователя root, метод аутентификации нужно изменить с auth_socket на mysql_native_password. Для этого откройте командную строку MySQL через терминал:

$ sudo mysql

Затем введите команду для смены плагина авторизации. Где написано слово password, вы должны ввести свой пароль!!!

mysql> ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'password';

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

mysql> FLUSH PRIVILEGES;

Ну а теперь можно выйти:

mysql> EXIT;

Шаг 3. Установка и настройка PHP

После настройки и установки Nginx и MySQL, можно установить PHP.

Мы только установим два модуля «php-fpm» и «php-mysql», которы потянут за собой все нужные зависимости:

$ sudo apt install php-fpm php-mysql

Теперь у нас установлены все компоненты LEMP-стека.

Я предлагаю вам создать новый визуальный хост, в котором мы и активируем php.

$ sudo nano /etc/nginx/sites-available/example

В нём вы должны написать следующее:

server {
        listen 80;
        root /var/www/html;
        index index.php index.html index.htm index.nginx-debian.html;
        server_name your_domain.com;

        location / {
                try_files $uri $uri/ =404;
        }

        location ~ \.php$ {
                include snippets/fastcgi-php.conf;
                fastcgi_pass unix:/var/run/php/php7.4-fpm.sock;
        }

        location ~ /\.ht {
                deny all;
        }
}

В шестой строке возле server_name измените your_domain.com на ваш домен.

После создания и сохранения этого файла вам нужно создать символическую ссылку в каталог /etc/nginx/sites-enabled/:

$ sudo ln -s /etc/nginx/sites-available/example /etc/nginx/sites-enabled/

А дальше нужно удалить символическую ссылку на стандартную конфигурацию:

$ sudo unlink /etc/nginx/sites-enabled/default

Далее вы можете проверить конфигурацию на ошибки и синтаксис командой:

$ sudo nginx -t

Если всё хорошо и нет ошибок то можно перезапустить веб-сервер командой:

$ sudo systemctl restart nginx

Готово! Теперь вы можете загрузить файлы сайта в директорию /var/www/html и ваш сайт будет доступен по вашему домену.

Вывод

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

Статья написана по информации с сайта DigitalOcean.com

Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.

One thought on “Установка LEMP-сетка в Debian Bullseye (SID)

Добавить комментарий

Ваш адрес email не будет опубликован.

Сообщить об опечатке

Текст, который будет отправлен нашим редакторам: