Установка 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
One thought on “Установка LEMP-сетка в Debian Bullseye (SID)”