LEMP (Nginx, MariaDB та PHP), установка на Ubuntu 20.04

про ЛЕМП

У наступній статті ми збираємось поглянути на те, як ми можемо встановити LEMP (Nginx, MariaDB та PHP) на Ubuntu 20.04. Цей стек програм широко використовується для розміщення малих та великих веб-сайтів / блогів. Якщо ви один з тих, хто вважає за краще використовувати сервер Apache для цих завдань, можливо, ви захочете поглянути на нього ЛАМПИ.

Програмний стек LEMP - це група програмних елементів, які можна використовувати для доставки динамічних веб-сторінок та веб-додатків. Це скорочення описує a Операційна система Linux, з а Веб-сервер Nginx. Дані вихідних даних зберігаються в MariaDB y динамічна обробка управляється через PHP. У наступних рядках ми побачимо, як встановити все це локально, використовуючи комп'ютер з Ubuntu 20.04.

Встановлення стеку програмного забезпечення LEMP на Ubuntu 20.04

На момент написання статті, якщо дотримуватися наведених нижче інструкцій, Ми зможемо встановити пакети EMP (Nginx v1.19, PHP v7.4, MariaDB v10.3) в Ubuntu 20.04.

Встановіть Nginx із сховища

Nginx надає сховище для операційної системи Ubuntu. Офіційне сховище Nginx включає версію v1.19.

версія nginx

Щоб розпочати встановлення Nginx із сховища, ми збираємося відкрити термінал (Ctrl + Alt + T) та оновити список доступного програмного забезпечення за допомогою команди:

sudo apt update

Наступне, що ми зробимо, це встановіть деякі пакети:

встановити сертифікати та завити

sudo apt install curl gnupg2 ca-certificates lsb-release

Далі, в тому самому терміналі ми будемо додайте необхідний ключ і сховище, щоб мати можливість встановити Nginx:

додати сховище для nginx

curl -fsSL https://nginx.org/keys/nginx_signing.key | sudo apt-key add -

echo "deb [arch=amd64] http://nginx.org/packages/mainline/ubuntu focal nginx" | sudo tee /etc/apt/sources.list.d/nginx.list

Після того, як сховище було правильно додано, ми можемо перейти до встановити пакет Nginx з командами:

встановити nginx для

sudo apt update; sudo apt install nginx

Після завершення встановлення ми це зробимо запустити службу Nginx за командою:

sudo systemctl start nginx

Після запуску сервера ми можемо відкрити веб-браузер і відвідайте IP-адресу нашого сервера. У цьому випадку, оскільки я роблю це локально, це буде IP-адреса комп’ютера, на якому я щойно його встановив. Ви повинні побачити сторінку Nginx за замовчуванням, яка підтверджує, що сервер встановлений і працює належним чином.

Сервер nginx, що працює у веб-браузері

Корінь документа за замовчуванням Nginx в Ubuntu 20.04 можна знайти в цій папці / usr / share / nginx / html та файли конфігурації в / etc / nginx /.

файли nginx

Встановіть MariaDB

версія LEMP mariadb

Наступним кроком буде встановлення сервера MariaDB за допомогою наступної команди. За замовчуванням Ubuntu 20.04 включає MariaDB v10.3.

інсталяція mariadb для LEMP

sudo apt install mariadb-server mariadb-client

Далі нам доведеться встановити пароль користувача і захистити екземпляр MariaDB за допомогою команди mysql_secure_installation. На всі питання, які ви нам задаєте, відповідати більше не доведеться 'y'. Хоча читати їх завжди добре.

sudo mysql_secure_installation

Встановіть PHP-FPM

На цьому ми будемо встановлювати PHP-FPM (Менеджер процесів PHP-FastCGI) для відображення динамічного вмісту, написаного на PHP.

php версія для LEMP

Для встановлення PHP-FPM ми будемо використовувати наступну команду. За замовчуванням на сьогодні Ubuntu 20.04 включає PHP-FPM v7.4.

встановіть php-fpm для LEMP

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

PHP-FPM слухає розетка /run/php/php7.4-fpm.sock за замовчуванням. Щоб використовувати TCP-з'єднання, ми відредагуємо такий файл:

sudo vim /etc/php/7.4/fpm/pool.d/www.conf

Опинившись у файлі, ми це зробимо змінити параметр прослуховування:

listen = /run/php/php7.4-fpm.sock

До наступного:

конфігурація www.conf PHP

listen = 127.0.0.1:9000

Після внесення змін нам залишається лише зберегти файл і закрити. Наступне, що ми зробимо, це перезапустіть PHP-FPM за допомогою команди:

sudo systemctl restart php7.4-fpm.service

Тестування LEMP

Як доказ, ми збираємось створити віртуальний хост на основі імен на сервері Nginx для тестування нашої інсталяції стеку LEMP. Наступні імена та адреси є лише прикладом того, що кожен користувач пристосовує їх до своїх потреб.

  • Доменне ім'я: site.betweenonesandzeroes.local
  • Корінь документа: /www/site.entreunosyceros.local

Ми почнемо зі створення файл конфігурації віртуального хосту для нашого домену в каталозі /etc/nginx/conf.d/:

sudo vim /etc/nginx/conf.d/site.entreunosyceros.local.conf

Тест LEMP конфігурації віртуального хосту

Усередині файлу, ми додамо наступний вміст:

server {
server_name site.entreunosyceros.local;
root /www/site.entreunosyceros.local;

location / {
index index.html index.htm index.php;
}

location ~ \.php$ {
include /etc/nginx/fastcgi_params;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
}
}

Після вставлення вмісту ми зберігаємо та закриваємо. А тепер давайте створити кореневий каталог для розміщення PHP-файлів:

sudo mkdir -p /www/site.entreunosyceros.local

Наступне буде змінити право власності на кореневий каталог:

sudo chown -R www-data:www-data /www/site.entreunosyceros.local/

в перевірити підтримку PHP-FPM, ми розмістимо файл .php у корені документа віртуального хосту за допомогою команди:

створити файл тесту для LEMP

echo "<?php phpinfo(); ?>" | sudo tee /www/site.entreunosyceros.local/index.php

Ми продовжуємо перезапуск Nginx:

sudo systemctl restart nginx

Зараз давайте створимо запис хоста для домену (у цьому прикладі site.entreunosyceros.local) у файлі / etc / hosts, у випадку, якщо в нашому середовищі немає DNS-сервера для дозволу імен.

sudo vim /etc/hosts

Всередині файлу ми будемо додати запис хоста, як показано продовження.

файл локальних хостів

10.0.2.15 site.entreunosyceros.local site

Зберігаємо зміни та закриваємо файл. Наступне, що ми зробимо, це відкрийте веб-браузер і напишіть в адресному рядку ім'я, що використовується:

локальний веб-сайт веб-браузер php інформація

Під час попереднього захоплення, У рядку API сервера ви бачите, що PHP працює на нашому сервері через FPM / FastCGI.

І на цьому ми можемо зробити висновок локальна установка LEMP на Ubuntu 20.04.