Как да инсталирате Nginx, MariaDB и PHP на Rocky Linux 9

Сподели

Това ръководство стъпка по стъпка ви превежда през инсталирането и конфигурирането на Nginx, MariaDB и PHP (LEMP Stack) на Rocky Linux 9.

Софтуерният стек LEMP се състои от група софтуер от страна на сървъра, който обслужва динамични уеб страници и уеб приложения. Това е акроним, представляващ четири отделни компонента: (L) Linux OS, (E) Nginx уеб сървър, (M) MySQL/MariaDB база данни и (P) PHP скриптов език.

Rocky Linux, един от най-популярните заместители на Red Hat Enterprise Linux, е надеждна, сигурна и стабилна Linux дистрибуция, осигуряваща безпроблемна работа на вашия сървър. Поради тези качества, това е разумен и често предпочитан избор от системни администратори за базирани на Linux сървъри.

Този урок ви показва как да инсталирате стека LEMP (Nginx, MariaDB и PHP) на Rocky Linux 9, превръщайки го в най-добрия сървър за разработване и хостване на вашите уеб приложения. Така че без повече шум, нека се захващаме за работа.

Предпоставки

Ще ви е необходим достъп до сървър Rocky Linux 9, за да завършите това ръководство. В допълнение, всички показани команди се изпълняват от обикновен потребител с sudo разрешения за изпълнение. Следователно трябва да притежавате такъв.

Разбира се, можете да пропуснете sudo част от командите и ги стартирайте директно като root потребител. Резултатът ще бъде един и същ и в двата случая.

Освен това се уверете, че вашата защитна стена не блокира порт 80 към сървъра и порт 443, ако планирате да използвате SSL.

sudo firewall-cmd --permanent --add-service={http,https}
sudo firewall-cmd --reload
Firewalld - Активиране на HTTP/HTTPS портове

1. Актуализирайте софтуерните хранилища

Първо, ще използваме командата DNF, за да актуализираме списъка с налични пакети. Това гарантира, че само най-новите версии на пакетите се използват по време на инсталирането на стека LEMP на нашата система Rocky Linux 9 и предотвратява трудностите.

Освен това се уверете, че системата е напълно актуализирана. Ако пакетите чакат да бъдат актуализирани, съветвам ви да ги приложите, преди да продължите.

sudo dnf update
Актуализиране на софтуерни хранилища

2. Инсталирайте Nginx Web Server на Rocky Linux 9

Уеб сървърът ви позволява да предоставяте съдържание като уеб страници на посетителите на уебсайта. Тази стъпка се грижи за второто изискване в стека LEMP, уеб сървъра Nginx.

Използвайте следните команди, за да инсталирате най-новата версия на Nginx на вашия сървър Rocky Linux 9. Когато бъдете подканени, въведете „Y“, за да потвърдите, че искате да го инсталирате.

sudo dnf install nginx
Инсталирайте Nginx Web Server на Rocky Linux 9

След като уеб сървърът Nginx бъде инсталиран на вашата система Rocky Linux 9, моля, активирайте го да работи по време на зареждане и стартирайте услугата Nginx.

sudo systemctl enable nginx
sudo systemctl start nginx
Активирайте и стартирайте услугата Nginx на Rocky Linux 9

Нека сега проверим дали Nginx сървърът е стартиран успешно.

sudo systemctl status nginx
Проверете състоянието на услугата Nginx

Накрая отворете уеб браузър и въведете IP адреса на сървъра в адресната лента. Трябва да показва началната страница на Rocky Linux 9 Nginx по подразбиране.

Страницата за добре дошли на Rocky Linux 9 Nginx

3. Инсталирайте MariaDB Server на Rocky Linux 9

Сега, когато имате работещ уеб сървър, трябва да инсталирате сървъра на базата данни, за да съхранявате и управлявате данни за вашия уебсайт. Вместо MySQL, в този урок ще инсталираме MariaDB.

Това е RDBMS с отворен код (система за управление на релационни бази данни), обратно съвместима, двоична замяна на MySQL. MariaDB осигурява подобрена производителност с по-бързи скорости на репликация, по-строги мерки за сигурност и допълнителни двигатели за съхранение в сравнение с MySQL.

За да инсталирате базата данни MariaDB, изпълнете командите по-долу и когато бъдете подканени, потвърдете инсталирането, като напишете „Y“ и натиснете „Enter“.

sudo dnf install mariadb-server
Инсталирайте MariaDB сървър на Rocky Linux 9

Тогава нека активираме и стартираме услугата MariaDB със следните команди.

sudo systemctl enable mariadb
sudo systemctl start mariadb
Активирайте и стартирайте услугата MariaDB на Rocky Linux 9

3.1 Защита на MariaDB сървър

След това ще използваме скрипт (mysql_secure_installation), предоставени от mariadb-server пакет за ограничаване на достъпа до сървъра и премахване на неизползвани акаунти, тъй като настройката по подразбиране прави вашата инсталация на MariaDB опасна.

Стартирайте скрипта за сигурност след инсталирането.

sudo mysql_secure_installation

След като изпълните горната команда, ще бъдете подканени да въведете основната парола на MariaDB. Просто оставете root паролата празна и натиснете клавиша “Enter”. За останалото продължете да пишете „Y“ и да натискате „Enter“.

Защита на MariaDB сървър

Страхотен! Вие сте осигурили сървъра MariaDB в стека LEMP на Rocky Linux 9.

Поясняваме, че паролата, посочена по-горе за основните акаунти на MariaDB, е само за отдалечени потребители. За да влезете от хоста, който инсталирахме, не е необходимо да въвеждате парола и няма да ви бъде поискана такава. Просто напишете „sudo mysql” за достъп до обвивката на MariaDB.

3.2 Тестване на инсталацията на MariaDB

Нека влезем в него и изпълним проста заявка, за да проверим дали сървърът на базата данни функционира нормално.

За да влезете, въведете командата, показана по-долу.

sudo mysql

Това ще се свърже със сървъра MariaDB и обвивката на MariaDB трябва да се появи. След това изпълнете проста заявка:

select version();

В отговор на вашето запитване сървърът MariaDB трябва да върне своята версия. И накрая, за да излезете от обвивката на MariaDB и да се върнете към системния терминал, използвайте „quit” команда.

Тестване на инсталацията на MariaDB

4. Инсталирайте PHP на Rocky Linux 9

Последната стъпка за инсталиране на пълен стек LEMP на нашата система Rocky Linux 9 е инсталирането на PHP скриптовия език. За да добавите PHP поддръжка към Nginx, трябва да инсталирате и използвате PHP-FPM за изпълнение на PHP файлове.

Така че, за да инсталирате PHP-FPM заедно с няколко най-широко използвани PHP модула, въведете командата по-долу и когато бъдете подканени, въведете „Y“, за да потвърдите, че искате да го инсталирате.

sudo dnf install php-fpm php-mysqlnd php-gd php-cli php-curl php-mbstring php-bcmath php-zip php-opcache php-xml php-json php-intl
Инсталирайте PHP на Rocky Linux 9

След като инсталацията приключи, трябва да направим още една корекция на услугата PHP-FPM. Ето за какво става въпрос.

По подразбиране услугата PHP-FPM се изпълнява като потребител на Apache. Въпреки това, тъй като използваме Nginx, трябва да променим конфигурационния файл на PHP-FPM и да превключим потребителя по подразбиране от „apache“ на „nginx“.

sudo vim /etc/php-fpm.d/www.conf

Намерете тези два реда:

user = apache
group = apache

И след това ги променете така, че да изглеждат така:

user = nginx
group = nginx
Конфигурирайте услугата PHP-FPM

Запазете и излезте от файла. След това активирайте и стартирайте услугата PHP-FPM.

sudo systemctl enable php-fpm
sudo systemctl start php-fpm
Активирайте и стартирайте услугата PHP-FPM

И накрая, проверете състоянието на услугата PHP-FPM.

sudo systemctl status php-fpm
Проверете състоянието на услугата PHP-FPM

5. Създайте виртуален хост Nginx

Сега, след като инсталирахме всички LEMP компоненти на нашия сървър Rocky Linux 9, трябва да добавим конфигурационен файл за сайта. За да постигнем това, ще създадем нов сървърен блок, често известен като виртуален хост.

Ако искате да разгледате по-задълбочено сървърните блокове на Nginx, разгледайте нашето ръководство „Как да създадете Nginx виртуален хост (сървърен блок)“ по темата.

За целите на тестването обаче можете да експериментирате с example.com и най-лесният начин да направите това е да добавите ред с запис за example.com във вашия /etc/hosts файл.

Трябва да насочите записите на името на домейна към IP адреса на сървъра. В нашия случай IP адресът на сървъра е 192.168.122.212. Така че, ако използвате Linux, отворете /etc/hosts файл на вашия настолен компютър и добавете следния ред към файла:

192.168.122.212	example.com

След това запазете и излезте от файла.

След това създайте нова директория с уеб файлове за вашето приложение. Първо се уверете, че сте заменили „example.com“ с името на вашия домейн.

sudo mkdir /var/www/example.com

След това създайте тестов PHP файл:

echo "<?php phpinfo(); ?>" | sudo tee /var/www/example.com/index.php

Предоставете на Nginx разрешения за четене и запис в директорията.

sudo chown -R nginx:nginx /var/www/example.com

Сега е време да създадем нашия сървърен блок, който е файл, съдържащ конфигурацията на сайта.

sudo vim /etc/nginx/conf.d/example.com.conf

Добавете следното съдържание към файла, след това го запазете и излезте.

server {
    listen       80;
    listen       [::]:80;
    server_name  example.com www.example.com;
    root         /var/www/example.com;

    index index.php index.html;
    try_files $uri $uri/ /index.php?$args;

    access_log /var/log/nginx/example_com.access;
    error_log /var/log/nginx/example_com.error;

    location ~ \.php$ {
        include fastcgi_params;
        fastcgi_pass unix:/run/php-fpm/www.sock;
        fastcgi_split_path_info ^(.+\.php)(/.+)$;
        fastcgi_index index.php;
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
    }
}

Не забравяйте да замените „example.com“ с действителния домейн и пътища, които използвате.

Накрая рестартирайте уеб сървъра на Nginx, така че промените да влязат в сила.

sudo systemctl restart nginx

6. Тествайте инсталацията на Rocky Linux 9 LEMP

Завършихте инсталирането на Nginx, MariaDB и PHP на Rocky Linux 9, така че вашият LEMP стек вече трябва да работи напълно.

Стартирайте браузъра си и посетете домейна на вашия сайт, за да тествате конфигурацията. Трябва да се появи уеб страница с пълна информация за вашата PHP инсталация.

Инсталирането на Rocky Linux 9 LEMP бе успешно

Честито! Вие успешно инсталирахте напълно функционален LEMP стек на Rocky Linux 9.

Заключение

Това ръководство ви показа как да инсталирате стека LEMP (Nginx, MariaDB и PHP) на Rocky Linux 9. В резултат на това базираните на PHP уеб приложения вече могат да се изпълняват на вашия сървър.

Има няколко следващи стъпки, които можете да предприемете от тук. Например, препоръчвам ви да прочетете нашето ръководство за настройка на SSL сертификати на Nginx сървъра, за да сте сигурни, че уебсайтът ви предоставя съдържание през защитена SSL (HTTPS) връзка.

Благодаря за отделеното време! Надявам се, че ще намерите това ръководство за полезно. Вашите отзиви и коментари са добре дошли.

Публикациите се превеждат автоматично с google translate


Сподели