База ведаў Простая інструкцыя па працы з сэрвісам Профітсервер
галоўны База ведаў Як наладзіць вэб-сервер (Apache-PHP-MySQL/MariaDB) у Linux

Як наладзіць вэб-сервер (Apache-PHP-MySQL/MariaDB) у Linux


У гэтым артыкуле мы дамо вам пакрокавыя інструкцыі аб тым, як наладзіць вэб-асяроддзе на серверы пад кіраваннем Linux. Перш за ўсё, вам трэба зразумець, што тыповы вэб-сервер складаецца з некалькіх ўзаемадзейнічаючых кампанентаў:

  • Сервер HTTP
  • інтэрпрэтатар мовы праграмавання
  • сістэма кіравання базамі дадзеных (СУБД)

Для кіравання вэб-сайтам вам таксама спатрэбіцца наладзіць сістэму кіравання кантэнтам (CMS), вэб-інтэрфейс для кіравання базай дадзеных і доступ па FTP.

Давайце разгледзім наладжванне вельмі папулярнай канфігурацыі Apache-PHP-MySQL(MariaDB) у Linux. Мы таксама ўсталюем ftp-сервер vsftpd, вэб-інтэрфейс для кіравання базамі дадзеных 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, калі пароля няма. Паколькі пароль не ўсталяваны для "корань" карыстальнік пасля ўстаноўкі, проста націсніце "Увайсці".

Звярніце ўвагу, што ў MariaDB ужо ёсць уласныя ўліковыя запісы, якія не маюць нічога агульнага з уліковымі запісамі АС. Такім чынам, адзіны карыстальнік, з якім мы маем справу ў MariaDB, гэта "корань".

  MySQL: Стварыце ўліковы запіс і ўсталюйце пароль

Пасля гэтага канфігуратар папросіць нас усталяваць пароль для карыстальніка root. Тып "Y" каб пацвердзіць і ўвесці новы пароль. У нашым выпадку гэта так «Qwe123»

  MySQL: Стварыце ўліковы запіс і ўсталюйце пароль

адказаць "Y" на ўсе астатнія пытанні да самага канца.

Канфігурацыя зроблена!

Дэталі доступу да MariaDB:

  • Лагін: root
  • Пароль: Qwe123

Канфігурацыя phpMyAdmin

1. ўстаноўка

Давайце ўсталюем неабходнае пашырэнне для PHP - радок mb.

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. Падрыхтуйце базу даных

Паколькі падчас пачатковай канфігурацыі MariaDB мы абмежавалі выкарыстанне карыстальніка root, нам трэба будзе стварыць новы ўліковы запіс з усімі дазволамі, якія будуць выкарыстоўвацца для доступу да 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

Калі ласка, звярніце ўвагу, што імя базы дадзеных у другім запыце знаходзіцца ў задняй іскры «… ON `phpmyadmin`.* TO 'pma'@'localhost' IDENTIFICED BY …”,

У выніку ў 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

Спытайце нас пра VPS

Мы заўсёды гатовы адказаць на вашы пытанні ў любы час дня і ночы.