Как установить стек LEMP на Debian 10

Как установить стек LEMP на Debian 10

 

В этом руководстве мы покажем вам, как установить стек LEMP на Debian 10. Для тех из вас, кто не знал, LEMP — это аббревиатура от Linux, Nginx, MySQL / MariaDB и PHP. Linux — это серверная операционная система. Nginx (произносится как Engine-X, отсюда и буква E в аббревиатуре) — это программное обеспечение веб-сервера.

В этой статье предполагается, что у вас есть хотя бы базовые знания Linux, вы знаете, как использовать оболочку, и, что наиболее важно, вы размещаете свой сайт на собственном VPS. Установка довольно проста и предполагает, что вы работаете с учетной записью root, в противном случае вам может потребоваться добавить ‘ sudo‘ к командам для получения привилегий root. Я покажу вам пошаговую установку LEMP на Debian 10 (Buster).

Установите LEMP Stack в Debian 10 Buster

Шаг 1. Перед запуском приведенного ниже руководства важно убедиться, что ваша система обновлена, выполнив следующие aptкоманды в терминале:

sudo apt update

Шаг 2. Установка Nginx на Debian 10.

Nginx — это кроссплатформенный, легкий, но мощный и простой в настройке HTTP и обратный прокси-сервер с открытым исходным кодом. Выполните следующую команду, чтобы установить его:

sudo apt install nginx

После установки Nginx должен запуститься автоматически. Проверьте его статус с помощьюsystemctl:

sudo systemctl status nginx

Затем, если у вас запущен брандмауэр UFW (обычно он отключен по умолчанию), вам нужно открыть порты 80 (HTTP) и 443 (HTTPS), чтобы разрешить входящий трафик на Nginx:

sudo ufw allow 80
sudo ufw allow 443

Теперь введите общедоступный IP-адрес вашего сервера Debian 10 в адресной строке браузера. Вы должны увидеть веб-страницу «Добро пожаловать в Nginx» по умолчанию, что означает, что веб-сервер Nginx работает правильно.

http://your-server-ip-address

Шаг 3. Установка MariaDB в Debian 10.

MariaDB — это система баз данных по умолчанию в Debian 10. Чтобы установить MariaDB, выполните следующую команду:

sudo apt install mariadb-server

В данный момент служба MariaDB должна быть запущена. Проверьте статус службы MariaDB, используя следующую команду:

sudo systemctl status mariadb

По умолчанию MariaDB не усилен. Вы можете защитить MariaDB с помощью mysql_secure_installationскрипта. вы должны внимательно прочитать и под каждым шагом, который установит пароль root, удалит анонимных пользователей, запретит удаленный вход root и удалит тестовую базу данных и доступ к безопасности MariaDB:

mysql_secure_installation

Настройте это так:

- Set root password? [Y/n] y
- Remove anonymous users? [Y/n] y
- Disallow root login remotely? [Y/n] y
- Remove test database and access to it? [Y/n] y
- Reload privilege tables now? [Y/n] y

Чтобы войти в MariaDB, используйте следующую команду (обратите внимание, что это та же команда, которую вы использовали бы для входа в базу данных MariaDB):

mysql -u root -p

Шаг 4. Установка PHP в Debian 10.

Установите PHP FastCGI Processing Manager, который включает основные зависимости PHP:

sudo apt install php-fpm php-cli php-gd php-curl php-mysql

Теперь запустите php-fpm и включите автозапуск при загрузке:

sudo systemctl start php-fpm
sudo systemctl enable php-fpm

Шаг 5. Настройте Nginx для работы с PHP.

Теперь мы создаем новый файл серверного блока в каталоге с текстовым редактором командной строки:/etc/nginx/conf.d/

sudo nano /etc/nginx/conf.d/default.conf

Добавьте следующий файл:

server {
  listen 80;
  listen [::]:80;
  server_name _;
  root /usr/share/nginx/html/;
  index index.php index.html index.htm index.nginx-debian.html;

  location / {
    try_files $uri $uri/ /index.php;
  }

  location ~ \.php$ {
    fastcgi_pass unix:/run/php/php7.3-fpm.sock;
    fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
    include fastcgi_params;
    include snippets/fastcgi-php.conf;
  }

 # A long browser cache lifetime can speed up repeat visits to your page
  location ~* \.(jpg|jpeg|gif|png|webp|svg|woff|woff2|ttf|css|js|ico|xml)$ {
       access_log        off;
       log_not_found     off;
       expires           360d;
  }

  # disable access to hidden files
  location ~ /\.ht {
      access_log off;
      log_not_found off;
      deny all;
  }
}

После этого примените недавно внесенные изменения, перезапустите службы php-fpm и nginx следующим образом:

sudo nginx -t
sudo systemctl reload nginx

Шаг 6. Протестируйте PHP.

Чтобы протестировать PHP, создайте тестовый файл с именем info.php с приведенным ниже содержимым. Сохраните файл, затем перейдите к нему, чтобы узнать, работает ли PHP:

sudo nano /usr/share/nginx/html/info.php

Вставьте в файл следующий код PHP:

<?php
phpinfo();
?>

Теперь перейдите в браузер и просмотрите файл info.php, как показано . Если информационная страница PHP отображается в вашем браузере, значит, все в порядке, и вы готовы продолжить.http://your-server-ip-address/info.php

Поздравляю! Вы успешно установили LEMP . Благодарим за использование этого руководства для установки последней версии LEMP Stack в системе Debian. Для получения дополнительной помощи или полезной информации мы рекомендуем вам посетить официальный сайт LEMP.