Знания Прости инструкции за работа с услугата Profitserver
основен Знания Как да конфигурирате уеб сървър (Apache-PHP-MySQL/MariaDB) на Linux

Как да конфигурирате уеб сървър (Apache-PHP-MySQL/MariaDB) на Linux


В тази статия ще ви дадем инструкции стъпка по стъпка как да конфигурирате уеб среда на сървър, работещ под Linux. Първо, трябва да разберете, че типичният уеб сървър се състои от няколко взаимодействащи си компонента:

  • HTTP сървър
  • интерпретатор на език за програмиране
  • система за управление на бази данни (СУБД)

За да управлявате уебсайта си, ще трябва да настроите система за управление на съдържанието (CMS), уеб интерфейс за управление на база данни и FTP достъп.

Нека помислим за настройка на много популярна конфигурация Apache-PHP-MySQL(MariaDB) на Linux. Ще инсталираме и vsftpd ftp сървър, phpMyAdmin - уеб интерфейс за управление на база данни и система за управление на съдържание WordPress.

За начало моля поръчайте VPS сървър or специален сървър. Например използвахме виртуален сървър със статичен IP адрес, работещ с Ubuntu Server 18.04. Всички команди бяха изпълнени от root потребител.

Конфигурация на HTTP сървър на Apache

1. Инсталация

apt install apache2

Когато инсталацията приключи, отворете браузър и проверете „http://[ip_адрес на сървъра]“

Конфигурация на HTTP сървър на Apache

Ако видите страница за добре дошли като тази на екранната снимка по-горе, това означава, че вашият HTTP сървър работи.

2. Създайте тестова страница

Основната директория по подразбиране за уебсайта е „/var/www/html“. Това е мястото, където можете да намерите страницата за добре дошли, която току-що видяхте. Нека създадем отделна директория „/var/www/sites“ за виртуални хостове и подпапка „/var/www/sites/site1“ с индексната страница на вашия тестов уебсайт.

cd /var/www/

mkdir -p sites/site1

echo "<H1>Welcome</H1>" > sites/site1/index.html

В резултат файлът „/var/www/sites/site1/index.html“ трябва да съдържа само един ред html код:

<H1>Welcome</H1>

3. Конфигурация на Apache сървър

Конфигурационните файлове на уебсайтовете са вътре „/etc/apache2/sites-available/“ каталог. Нека създадем конфигурационен файл за нов виртуален хост, като вземем конфигурацията по подразбиране от файла „000-default.conf“ като основа.

cd /etc/apache2/sites-available/

cp 000-default.conf site1.conf

Отворете файла „site1.conf“ и променете „DocumentRoot“ атрибут. Поставете пътя на уебсайта си като стойност, така че в нашия случай е „/var/www/sites/site1“

Конфигурация на сървъра на Apache

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

a2dissite 000-default

a2ensite site1

systemctl reload apache2

Отворете връзката „http://[IP_адрес на сървъра]“ отново и се уверете, че вместо страницата за добре дошли по подразбиране имаме нашата нова страница.

Конфигурация на сървъра на Apache

Завършихме конфигурацията на нашия HTTP сървър и можем да продължим към следващата стъпка.

Конфигурация на FTP сървър

1. Инсталация

Нека инсталираме нашия ftp сървър и допълнителен пакет „db-util“, че ще трябва да конфигурираме виртуални потребители

apt install vsftpd db-util

2. Създайте локален акаунт

Сървърът vsftpd ни позволява да конфигурираме разрешенията за достъп по много гъвкав начин. За нашите задачи трябва да предоставим на ftp потребителите следното:

  • пълен достъп до съдържанието на „/var/www/sites/“;
  • деактивирайте всичко по-горе „/var/www/“;
  • връзка с виртуална сметка;

Създайте локален акаунт „виртуален“ без разрешение за влизане, но с достъп до началната папка „/var/www/“. Този акаунт ще се използва от ftp потребители за свързване към сървъра

useradd -d /var/www virtual

„корен“ ще бъде собственик на „/var/www“ папка по подразбиране. За да позволите на ftp потребителите да променят съдържанието на уебсайтовете, нека сменим собственика на „/var/www/sites/“ включително подпапки на „виртуален“.

chown -R virtual:root /var/www/sites

В резултат на това потребителят „виртуален“ ще можете да видите съдържанието на „/var/www/“ и пишете в „/var/www/sites/“ подпапка.

3. Конфигурация

Основната конфигурация е във файла „/etc/vsftpd.conf“, така че нека го отворим и редактираме по следния начин:

#enable virtual users

anonymous_enable=NO

local_enable=YES

guest_enable=YES

guest_username=virtual
#configure permission

write_enable=YES

anon_upload_enable=YES

anon_mkdir_write_enable=YES

anon_other_write_enable=YES

anon_world_readable_only=NO

anon_umask=0022

chroot_local_user=YES
#launch settings

listen=YES

pasv_min_port=30000

pasv_max_port=30999

4. Създайте базата данни

Ще ви е необходима база данни, за да съхранявате данни за виртуални акаунти.

Първо, нека създадем прост текстов файл „users.txt“ в домашната папка и запишете данните за достъп (вход и парола) на виртуални потребители във всеки друг ред. Например, ще ни трябва виртуален потребител с вход „ftp“ и парола „Qwe123“. Тогава файлът ще изглежда така:

ftp

Qwe123

Нека създадем базата данни

db_load -T -t hash -f ~/users.txt /etc/vsftpd_login.db

Нека променим PAM файла по подразбиране „/etc/pam.d/vsftp“ , както следва:

auth required /lib/x86_64-linux-gnu/security/pam_userdb.so db=/etc/vsftpd_login

account required /lib/x86_64-linux-gnu/security/pam_userdb.so db=/etc/vsftpd_login

Моля, имайте предвид, че пътят на „pam_userdb.so“ библиотеката може да е различна, но можете да я промените, ако е необходимо.

Презаредете vsftpd сървъра, за да приложите промените.

systemctl restart vsftpd

Завършихме конфигурирането на FTP сървъра.

Подробности за връзката:

  • ftp://[ip_адрес_на_сървъра]
  • вход: ftp
  • парола: Qwe123

Конфигурация на PHP сървър

1. Инсталиране на PHP

Днес последната стабилна версия на PHP е php 7.4.5, която не е включена в официалните хранилища на Ubuntu. Нека свържем хранилище на трета страна и да инсталираме най-новата версия на PHP.

apt update

apt install software-properties-common

add-apt-repository ppa:ondrej/php

apt update

apt install php7.4

2. Проверка

За да може PHP да бъде изпълнен, файлът на уеб страницата трябва да има „.php“ разширение. Нека преименуваме нашата тестова страница:

cd /var/www/sites/site1/

mv index.html index.php

Добавете следния php ред към файла „/var/www/sites/site1/index.php“, така че файлът трябва да изглежда така:

<H1>Welcome</H1>

<?php

phpinfo();

?>

Запазете промените и проверете резултата в браузъра.

Конфигуриране на PHP сървър - инсталиране и проверка

Ако видите резултата от функцията „phpinfo()“, PHP интерпретаторът работи правилно. Сега нека преминем към следващата стъпка.

MySQL (MariaDB) конфигурация

1. Инсталация

Нека инсталираме MariaDB и PHP модул за MySQL и след това презаредим Apache.

apt install mariadb-server php-mysql

systemctl restart apache2

Обновете тестовата страница и отидете на секцията PDO в конфигурационната таблица на PHP. Ако можете да намерите секцията „PDO_mysql“, това означава, че драйверът за Mysql е инсталиран правилно.

Инсталиране и конфигуриране на MySQL (MariaDB).

След това ще трябва да направим първоначалната конфигурация за сигурност на MariaDB и да зададем паролата за "Корен" потребител, деактивирайте отдалечения достъп и изтрийте всички акаунти на гости.

mysql_secure_installation

На първата стъпка трябва да влезем в "корен" потребителска парола за достъп до СУБД или натиснете Enter, ако няма парола. Тъй като няма зададена парола за "корен" потребител след инсталиране, просто натиснете „Enter“.

Моля, обърнете внимание, че в MariaDB вече има собствени акаунти, които нямат нищо общо с акаунтите на OS. Така че единственият потребител, с който работим в MariaDB, е "корен".

  MySQL: Създайте акаунт и задайте парола

След това конфигураторът ще ни помоли да зададем паролата за root потребителя. Тип "Y" за потвърждение и въвеждане на новата парола. В нашия случай е „Qwe123“

  MySQL: Създайте акаунт и задайте парола

Отговор "Y" на всички останали въпроси до самия край.

Конфигурацията е готова!

Подробности за достъп до MariaDB:

  • Вход: root
  • Парола: Qwe123

конфигурация на phpMyAdmin

1. Инсталация

Нека инсталираме необходимото разширение за PHP - mbstring.

apt install php-mbstring

В официалното хранилище има само остаряла версия на phpMyAdmin, така че нека инсталираме новата ръчно.

Отворете официалния сайт на проекта “https://www.phpmyadmin.net/” и изтеглете най-новия архив.

Инсталиране и конфигуриране на phpMyAdmin

Копирайте архива на сървъра в „/var/www/sites/“ папка с помощта на всеки ftp клиент.

Разархивирайте папката и я преименувайте на „phpMyAdmin“. Не забравяйте да инсталирате „разархивирайте“ полезност. Можете да изтриете архива, след като сте го разархивирали.

apt install unzip

cd /var/www/sites/

unzip phpMyAdmin-5.0.2-all-languages.zip

mv phpMyAdmin-5.0.2-all-languages phpMyAdmin

rm phpMyAdmin-5.0.2-all-languages.zip

Създайте следната папка „/var/www/sites/phpMyAdmin/tmp“ за временни файлове и активирайте достъп за всички. Ако не направите това, phpMyAdmin ще съобщи за отказан достъп до временната папка.

cd /var/www/sites/phpMyAdmin/

mkdir tmp

chmod 777 tmp

2. Създайте псевдоним

Тъй като phpMyAdmin не е отделен виртуален хост и се намира извън главната директория, нека конфигурираме псевдонима.

Отворете файла „/etc/apache2/mods-available/alias.conf“ и добавете този ред:

Alias /pma “/var/www/sites/phpMyAdmin"

в този раздел:

<IfModule alias_module>

</IfModule>
phpMyAdmin: Създайте псевдоним

Презаредете Apache, за да приложите промените.

systemctl reload apache2

Псевдонимът е зададен, така че имаме достъп до phpMyAdmin тук „http://[ip_адрес_на_сървъра]/pma».

3. Подгответе базата данни

Тъй като ограничихме използването на root потребител по време на първоначалната конфигурация на MariaDB, ще трябва да създадем нов акаунт с всички разрешения, които ще се използват за достъп до phpMyAdmin.

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

Нека създадем акаунтите

mariadb -u root -p
GRANT ALL PRIVILEGES ON *.* TO 'pma'@'localhost' IDENTIFIED BY 'Qwe123' WITH GRANT OPTION;
GRANT SELECT, INSERT, UPDATE, DELETE ON `phpmyadmin`.* TO 'pmaservice'@'localhost' IDENTIFIED BY 'Qwe123' WITH grant option;
quit

Моля, обърнете внимание, че името на базата данни във втората заявка е в обратна искра „… ВКЛ `phpmyadmin`.* ДО 'pma'@'localhost' ИДЕНТИФИЦИРАН ОТ...”,

В резултат на това в MariaDB ще бъдат създадени два акаунта:

  • Логин: pma, Парола: Qwe123 Пълен достъп, ще се използва за влизане в phpMyAdmin
  • Вход: pmaservice, Парола: Qwe123 Сервизният акаунт е необходим, за да работят допълнителните функции

На следващата стъпка ще зададем тези подробности в конфигурационния файл „config.inc.php“.

След това ще трябва да импортираме базата данни от файла „phpMyAdmin/sql/create_tables.sql“.

Нека го импортираме с помощта на phpMyAdmin.

Отворете връзката „http://[ip_адрес_на_сървъра]/pma“

Въведете вход „pma“ и парола „Qwe123“

Отиди „Импортиране“, Щракнете върху „Избор на файл“ и изберете файла ”sql/create_tables.sql” в основната директория на phpMyAdmin. Трябва да има папка на вашия компютър „phpMyAdmin“ с файлове. Разархивирайте го, ако е необходимо.

конфигурация на phpmyadmin

Кликнете "Следващия" за да започнете да импортирате.

4. Конфигурация

Нека копираме конфигурационния файл от шаблона

cd /var/www/sites/phpMyAdmin/

cp config.sample.inc.php config.inc.php

Нека отворим конфигурационния файл „/var/www/sites/phpMyAdmin/config.inc.php“ и направете следните промени:

Задайте произволна стойност от 32 знака за атрибута “$cfg['blowfish_secret']”. Използвайте всеки генератор на пароли за това..

Как да инсталирате и конфигурирате WordPress на Linux сървър

Премахнете коментарите от всички редове на „Настройки за съхранение на конфигурацията на phpMyAdmin“ и задайте потребителското име и паролата на сервизния акаунт на MariaDB за „контролер“ намлява "контролен пропуск" атрибути съответно. В нашия случай е pmaservice намлява Qwe123.

Как да инсталирате и конфигурирате WordPress на Linux сървър

Запазете промените.

Подробности за достъп до phpMyadmin:

  • http://[server’s_ip_address]/pma/
  • Вход: pma
  • Парола: Qwe123

Как да инсталирате и конфигурирате WordPress на Linux сървър

1. WordPress пакет и разположение на файлове

Отидете на официалния уебсайт на WP "https://ru.wordpress.org/” и изтеглете архива на вашия локален компютър.

Качете архива на сървъра в „/var/www/sites/“ папка и я разархивирайте в “wordpress"Папка.

Копирайте съдържанието на „/var/www/sites/wordpress/“ главната папка на „/var/www/sites/site1/“ уебсайта.

Тъй като копирахме файловете през конзолата с root права, нека променим собственика на „/var/www/sites/“ папка, включваща съдържанието на „виртуален“. Това е необходимо за активиране на пълен достъп за ftp връзка през клиента.

cd /var/www/sites/

tar -xzvf wordpress-5.4-ru_RU.tar.gz

cp -R wordpress/* site1/

chown -R virtual:root /var/www/sites

2. Създайте база данни за WordPress

Влезте в phpMyAdmin и щракнете върху „Създаване на база данни“. Посочете произволно име на база данни, в нашия случай „wordpress_db“ и щракнете върху бутона „Създаване“.

Създайте база данни за WordPress

Изберете новата база данни в лявата секция и щракнете „Привилегии“

Създайте база данни за WordPress

След това кликнете „Добавяне на потребителски акаунт“.

Въведете данните за вход и парола (wpservice / Qwe123) в отворения прозорец проверете „Предоставете всички привилегии в wordpress_db“ и кликнете "Следващия"

Добавете потребителски акаунт в база данни за WordPress

На следващата страница щракнете „Отмени всички“ за да нулирате всички привилегии на ниво база данни и щракнете "Следващия".

Добавете потребителски акаунт в база данни за WordPress

3. WordPress конфигурация на Linux сървър

Отидете в основната директория на вашия уебсайт и копирайте конфигурационния файл от шаблона

cd /var/www/sites/site1/

cp wp-config-sample.php wp-config.php

Отворете „wp-config.php“ файл и въведете параметрите за връзка с базата данни, които създадохме в предишната стъпка, и запазете промените.

Конфигурация на WordPress на Linux сървър

4. Инсталирайте CMS WordPress

Отворете следната връзка в браузъра “http://[ip_адрес_на_сървъра]/wp-admin/install.php”.

Попълнете всички полета и щракнете „Инсталиране на WordPress“. Задайте произволно потребителско име и парола. В нашия случай е wpadmin намлява Qwe123 съответно.

Тези подробности ще се използват за достъп до WordPress.

Инсталирайте CMS WordPress на Linux сървър

След като завършите инсталацията, отворете връзката “http://[ip_адрес_на_сървъра]/wp-login.php”, въведете данните за достъп и влезте в WordPress.

Инсталирайте CMS WordPress на Linux сървър

Трябва да видите един от шаблоните на WordPress на главната страница.

Инсталирайте CMS WordPress на Linux сървър

Конфигурацията е завършена.

Подробности за достъп до WordPress:

  • http://[server’s_ip_address]/wp-login.php
  • Вход: wpadmin
  • Парола: Qwe123
❮ Предишна статия Конфигуриране на .htaccess файл

Попитайте ни за VPS

Винаги сме готови да отговорим на вашите въпроси по всяко време на деня и нощта.