Znalostní báze Jednoduchý návod pro práci se službou Profitserver
Hlavní Znalostní báze Jak nakonfigurovat webový server (Apache-PHP-MySQL/MariaDB) na Linuxu

Jak nakonfigurovat webový server (Apache-PHP-MySQL/MariaDB) na Linuxu


V tomto článku vám poskytneme podrobné pokyny, jak nakonfigurovat webové prostředí na serveru se systémem Linux. Nejprve musíte pochopit, že typický webový server se skládá z několika vzájemně se ovlivňujících komponent:

  • HTTP server
  • interpret programovacího jazyka
  • systém pro správu databází (DBMS)

Pro správu vašeho webu budete také potřebovat nastavit redakční systém (CMS), webové rozhraní pro správu databází a FTP přístup.

Zvažme nastavení velmi oblíbené konfigurace Apache-PHP-MySQL (MariaDB) na Linuxu. Dále nainstalujeme ftp server vsftpd, phpMyAdmin - webové rozhraní pro správu databází a redakční systém WordPress.

Pro začátek prosím objednat VPS server or Dedikovaný server. Například jsme použili virtuální server se statickou IP adresou se systémem Ubuntu Server 18.04. Všechny příkazy spouštěl uživatel root.

Konfigurace HTTP serveru Apache

1. Instalace

apt install apache2

Po dokončení instalace otevřete prohlížeč a zkontrolujte „http://[adresa_ip_serveru]“

Konfigurace HTTP serveru Apache

Pokud na výše uvedeném snímku vidíte uvítací stránku, jako je tato, znamená to, že váš HTTP server funguje.

2. Vytvořte testovací stránku

Výchozí kořenový adresář webu je „/var/www/html“. Zde můžete najít uvítací stránku, kterou jste právě viděli. Vytvořme samostatný adresář „/var/www/sites“ pro virtuální hostitele a podsložku „/var/www/sites/site1“ s indexovou stránkou vašeho testovacího webu.

cd /var/www/

mkdir -p sites/site1

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

Ve výsledku soubor „/var/www/sites/site1/index.html“ by měl obsahovat pouze jeden řádek html kódu:

<H1>Welcome</H1>

3. Konfigurace serveru Apache

Konfigurační soubory webových stránek jsou v „/etc/apache2/sites-available/“ katalog. Pojďme vytvořit konfigurační soubor pro nového virtuálního hostitele, který vezme výchozí konfiguraci ze souboru "000-default.conf" jako základ.

cd /etc/apache2/sites-available/

cp 000-default.conf site1.conf

Otevřete soubor "site1.conf" a změňte "DocumentRoot" atribut. Uveďte cestu svého webu jako hodnotu, takže v našem případě je „/var/www/sites/site1“

Konfigurace serveru Apache

V této fázi nepotřebujeme konfigurovat současný provoz více webů, takže můžeme deaktivovat výchozí web a povolit web nový. Chcete-li použít změny, znovu načtěte konfiguraci serveru.

a2dissite 000-default

a2ensite site1

systemctl reload apache2

Otevřete odkaz “http://[adresa_ip_serveru]” znovu a ujistěte se, že místo výchozí uvítací stránky máme naši novou stránku.

Konfigurace serveru Apache

Dokončili jsme konfiguraci našeho HTTP serveru a můžeme přejít k dalšímu kroku.

Konfigurace serveru FTP

1. Instalace

Pojďme nainstalovat náš ftp server a další balíček "db-util", že budeme muset nakonfigurovat virtuální uživatele

apt install vsftpd db-util

2. Vytvořte místní účet

Server vsftpd nám umožňuje konfigurovat přístupová oprávnění velmi flexibilním způsobem. Pro naše úkoly musíme uživatelům ftp poskytnout následující:

  • plný přístup k obsahu „/var/www/sites/“;
  • zakázat vše, co je výše „/var/www/“;
  • propojení s virtuálním účtem;

Vytvořte místní účet "virtuální" bez oprávnění k přihlášení, ale s přístupem do domovské složky „/var/www/“. Tento účet budou používat uživatelé ftp pro připojení k serveru

useradd -d /var/www virtual

"Vykořenit" bude vlastníkem „/var/www“ složku ve výchozím nastavení. Aby uživatelé ftp mohli upravovat obsah webových stránek, změňme vlastníka „/var/www/sites/“ včetně podsložek "virtuální".

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

V důsledku toho uživatel "virtuální" budou moci zobrazit obsah „/var/www/“ a napište do „/var/www/sites/“ podsložka.

3. konfigurace

Hlavní konfigurace je v souboru "/etc/vsftpd.conf", takže jej otevřeme a upravíme následovně:

#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. Vytvořte databázi

K ukládání dat virtuálních účtů budete potřebovat databázi.

Nejprve si vytvoříme jednoduchý textový soubor „users.txt“ v domovské složce a na každý druhý řádek ukládat přístupové údaje (login a heslo) virtuálních uživatelů. Například budeme potřebovat virtuálního uživatele s přihlášením "ftp" a heslo "Qwe123". Pak bude soubor vypadat takto:

ftp

Qwe123

Pojďme vytvořit databázi

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

Upravme výchozí soubor PAM „/etc/pam.d/vsftp“ následujícím způsobem:

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

Vezměte prosím na vědomí, že cesta "pam_userdb.so" knihovna se může lišit, ale v případě potřeby ji můžete změnit.

Chcete-li použít změny, znovu načtěte server vsftpd.

systemctl restart vsftpd

Dokončili jsme konfiguraci FTP serveru.

Podrobnosti o připojení:

  • ftp://[adresa_ip_serveru]
  • přihlášení: ftp
  • heslo: Qwe123

Konfigurace PHP serveru

1. Instalace PHP

Dnes je nejnovější stabilní verze PHP php 7.4.5, která není součástí oficiálních repozitářů Ubuntu. Pojďme připojit úložiště třetí strany a nainstalovat nejnovější verzi PHP.

apt update

apt install software-properties-common

add-apt-repository ppa:ondrej/php

apt update

apt install php7.4

2. Kontrola

Aby bylo možné PHP spustit, měl by mít soubor webové stránky „.php“ rozšíření. Přejmenujme naši testovací stránku:

cd /var/www/sites/site1/

mv index.html index.php

Přidejte do souboru následující řádek php „/var/www/sites/site1/index.php“, takže soubor by měl vypadat takto:

<H1>Welcome</H1>

<?php

phpinfo();

?>

Uložte změny a zkontrolujte výsledek v prohlížeči.

Konfigurace PHP serveru - instalace a kontrola

Pokud vidíte výsledek funkce "phpinfo()", PHP interpret funguje správně. Nyní přistoupíme k dalšímu kroku.

Konfigurace MySQL (MariaDB).

1. Instalace

Nainstalujme MariaDB a modul PHP pro MySQL a poté znovu načtěte Apache.

apt install mariadb-server php-mysql

systemctl restart apache2

Obnovte testovací stránku a přejděte do sekce PDO v konfigurační tabulce PHP. Pokud najdete sekci "PDO_mysql", pak to znamená, že ovladač pro Mysql je nainstalován správně.

Instalace a konfigurace MySQL (MariaDB).

Poté budeme muset provést počáteční konfiguraci zabezpečení MariaDB a nastavit heslo pro "Vykořenit" uživatele, zakažte vzdálený přístup a odstraňte všechny účty hostů.

mysql_secure_installation

V prvním kroku musíme vstoupit do "vykořenit" heslo uživatele pro přístup k DBMS nebo stiskněte Enter, pokud heslo neexistuje. Protože není nastaveno žádné heslo pro "vykořenit" uživatel po instalaci, stačí stisknout „Enter“.

Vezměte prosím na vědomí, že v MariaDB již existují vlastní účty, které nemají nic společného s účty OS. Takže jediný uživatel, se kterým se v MariaDB zabýváme, je "vykořenit".

  MySQL: Vytvořte účet a nastavte heslo

Poté nás konfigurátor požádá o nastavení hesla pro uživatele root. Typ „Y“ potvrďte a zadejte nové heslo. V našem případě ano "Qwe123"

  MySQL: Vytvořte účet a nastavte heslo

odpověď „Y“ na všechny ostatní otázky až do samého konce.

Konfigurace je hotová!

Přístupové údaje MariaDB:

  • Přihlášení: root
  • Heslo: Qwe123

konfigurace phpMyAdmin

1. Instalace

Pojďme nainstalovat potřebné rozšíření pro PHP - mbstring.

apt install php-mbstring

V oficiálním úložišti je pouze zastaralá verze phpMyAdmin, takže nainstalujme novou ručně.

Otevřít oficiální stránky projektu “https://www.phpmyadmin.net/“ a stáhněte si nejnovější archiv.

instalace a konfigurace phpMyAdmin

Zkopírujte archiv na server v „/var/www/sites/“ složku pomocí libovolného ftp klienta.

Zrušte archivaci složky a přejmenujte ji na "phpMyAdmin". Nezapomeňte nainstalovat "rozbalit" utility. Po zrušení archivace můžete archiv smazat.

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

Vytvořte následující složku „/var/www/sites/phpMyAdmin/tmp“ pro dočasné soubory a umožnit přístup všem. Pokud tak neučiníte, phpMyAdmin oznámí odmítnutí přístupu k dočasné složce.

cd /var/www/sites/phpMyAdmin/

mkdir tmp

chmod 777 tmp

2. Vytvořte alias

Vzhledem k tomu, že phpMyAdmin není samostatný virtuální hostitel a je umístěn mimo kořenový adresář, pojďme nakonfigurovat alias.

Otevřete soubor "/etc/apache2/mods-available/alias.conf" a přidejte tento řádek:

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

uvnitř této sekce:

<IfModule alias_module>

</IfModule>
phpMyAdmin: Vytvořte alias

Pro použití změn znovu načtěte Apache.

systemctl reload apache2

Alias ​​je nastaven, takže zde můžeme přistupovat k phpMyAdmin “http://[IP_adresa_serveru]/pma”.

3. Připravte databázi

Protože jsme během počáteční konfigurace MariaDB omezili používání uživatele root, budeme muset vytvořit nový účet se všemi oprávněními, která budou použita pro přístup k phpMyAdmin.

Kromě toho, abychom povolili další funkce phpMyAdmin, budeme potřebovat servisní databázi a účet pro přístup k ní.

Pojďme vytvořit účty

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

Vezměte prosím na vědomí, že název databáze ve druhém požadavku je ve zpětných jiskrách „… ON `phpmyadmin`.* NA 'pma'@'localhost' IDENTIFIKÁTOR …”,

Ve výsledku budou v MariaDB vytvořeny dva účty:

  • Přihlášení: pma, Heslo: Qwe123Plný přístup, bude použito pro přihlášení do phpMyAdmin
  • Přihlášení: pmaservice, Heslo: Qwe123Pro fungování dalších funkcí je vyžadován servisní účet

V dalším kroku nastavíme tyto detaily v konfiguračním souboru "config.inc.php".

Poté budeme muset importovat databázi ze souboru “phpMyAdmin/sql/create_tables.sql”.

Pojďme to importovat pomocí phpMyAdmin.

Otevřete odkaz “http://[IP_adresa_serveru]/pma”

Zadejte přihlašovací jméno "pma" a heslo "Qwe123"

Přejít "Import", Klepněte na tlačítko "Zvolte soubor" a vyberte soubor ”sql/create_tables.sql” v kořenovém adresáři phpMyAdmin. Složka by měla být na vašem PC "phpMyAdmin" se soubory. V případě potřeby jej zrušte z archivu.

konfigurace phpmyadmin

klikněte "Další" začít importovat.

4. konfigurace

Zkopírujeme konfigurační soubor ze šablony

cd /var/www/sites/phpMyAdmin/

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

Otevřeme konfigurační soubor „/var/www/sites/phpMyAdmin/config.inc.php“ a proveďte následující změny:

Nastavte pro atribut náhodnou hodnotu 32 znaků “$cfg['blowfish_secret']”. Použijte k tomu jakýkoli generátor hesel..

Jak nainstalovat a nakonfigurovat WordPress na serveru Linux

Odstraňte komentáře ze všech řádků "Nastavení úložiště konfigurace phpMyAdmin" a nastavte přihlašovací jméno a heslo servisního účtu MariaDB pro "ovládací uživatel" a "controlpass" atributy podle toho. V našem případě ano pmaservis a Qwe123.

Jak nainstalovat a nakonfigurovat WordPress na serveru Linux

Uložte změny.

Přístupové údaje pro phpMyAdmin:

  • http://[server’s_ip_address]/pma/
  • Přihlášení: pma
  • Heslo: Qwe123

Jak nainstalovat a nakonfigurovat WordPress na serveru Linux

1. Umístění balíčku a souborů WordPress

Přejděte na oficiální web WP “https://ru.wordpress.org/“ a stáhněte si archiv do místního počítače.

Nahrajte archiv na server do „/var/www/sites/“ složku a zrušte její archivaci do „wordpress".

Zkopírujte obsah souboru „/var/www/sites/wordpress/“ kořenová složka „/var/www/sites/site1/“ webová stránka.

Protože jsme zkopírovali soubory přes konzolu s oprávněními root, změňme vlastníka souboru „/var/www/sites/“ složky včetně obsahu "virtuální". To je nutné pro umožnění plného přístupu pro ftp připojení přes klienta.

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. Vytvořte databázi pro WordPress

Přihlaste se do phpMyAdmin a klikněte na „Vytvořit databázi“. Zadejte libovolný název databáze, v našem případě „wordpress_db“ a klikněte na tlačítko „Vytvořit“.

Vytvořte databázi pro WordPress

V levé části vyberte novou databázi a klikněte "Privilegia"

Vytvořte databázi pro WordPress

Pak klikněte na tlačítko "Přidat uživatelský účet".

Zadejte přihlašovací jméno a heslo (wpservice / Qwe123) v otevřeném okně zkontrolujte "Udělte všechna oprávnění ve wordpress_db" a klepněte na tlačítko "Další"

Přidejte uživatelský účet do databáze pro WordPress

Na další stránce klikněte “Zrušit vše” resetujte všechna oprávnění na úrovni databáze a klepněte na "Další".

Přidejte uživatelský účet do databáze pro WordPress

3. Konfigurace WordPressu na linuxovém serveru

Přejděte do kořenového adresáře svého webu a zkopírujte konfigurační soubor ze šablony

cd /var/www/sites/site1/

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

Otevřete "wp-config.php" soubor a zadejte parametry připojení k databázi, které jsme vytvořili v předchozím kroku, a uložte změny.

Konfigurace WordPressu na linuxovém serveru

4. Nainstalujte CMS WordPress

Otevřete v prohlížeči následující odkaz “http://[adresa_ip_serveru]/wp-admin/install.php”.

Vyplňte všechna pole a klikněte "Nainstalovat WordPress". Nastavte náhodné uživatelské jméno a heslo. V našem případě ano vstoupit a Qwe123 odpovídajícím způsobem.

Tyto údaje budou použity pro přístup k WordPress.

Nainstalujte CMS WordPress na linuxový server

Po dokončení instalace otevřete odkaz “http://[adresa_ip_serveru]/wp-login.php”, zadejte přístupové údaje a přihlaste se do WordPress.

Nainstalujte CMS WordPress na linuxový server

Na hlavní stránce byste měli vidět jednu z WordPress šablon.

Nainstalujte CMS WordPress na linuxový server

Konfigurace je dokončena.

Přístupové údaje WordPress:

  • http://[server’s_ip_address]/wp-login.php
  • Přihlášení: wpadmin
  • Heslo: Qwe123
❮ Předchozí článek Konfigurace souboru .htaccess

Zeptejte se nás na VPS

Jsme vždy připraveni zodpovědět vaše dotazy v kteroukoli denní i noční dobu.