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 si prosím objednejte VPS server nebo dedikovaný server . Například jsme použili virtuální server se statickou IP adresou s operačním 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 zaškrtněte políčko „http://[ip_adresa_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ář pro web je „/var/www/html“ . Zde najdete úvodní 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 by soubor „/var/www/sites/site1/index.html“ 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 katalogu „/etc/apache2/sites-available/“ . Vytvořme konfigurační soubor pro nový virtuální hostitel na základě výchozí konfigurace ze souboru „ 000-default.conf“ .

cd /etc/apache2/sites-available/

cp 000-default.conf site1.conf

Otevřete soubor „site1.conf“ a změňte atribut „DocumentRoot“ . Jako hodnotu zadejte cestu k vašemu webu, v našem případě „/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

Znovu otevřete odkaz „http://[ip_adresa_serveru]“ 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

Nainstalujme si náš ftp server a další balíček „db-util“ , který budeme potřebovat ke konfiguraci virtuálních uživatelů.

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 lokální účet „virtuální“ bez oprávnění k přihlášení, ale s přístupem k domovské složce „/var/www/“ . Tento účet budou používat uživatelé ftp pro připojení k serveru.

useradd -d /var/www virtual

Ve výchozím nastavení bude vlastníkem složky „/var/www“ uživatel „Root“ . Abychom uživatelům FTP umožnili upravovat obsah webových stránek, změníme vlastníka složky „/var/www/sites/“ včetně podsložek „virtual“.

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

V důsledku toho bude uživatel „virtuální“ moci vidět obsah „/var/www/“ a zapisovat do podsložky „/var/www/sites/“.

3. konfigurace

Hlavní konfigurace je v souboru „/etc/vsftpd.conf“ , takže si ho otevřeme a upravíme takto:

#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 v domovské složce vytvořme jednoduchý textový soubor „users.txt“ a do něj uložíme přístupové údaje (přihlašovací jméno a heslo) virtuálních uživatelů do každého druhého řádku. Například budeme potřebovat virtuálního uživatele s přihlašovacím jménem „ftp“ a heslem „Qwe123“ . Soubor pak bude 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“ takto:

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 ke knihovně „pam_userdb.so“ 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 se PHP kód spustil, musí mít soubor webové stránky příponu „.php“ . Přejmenujeme naši testovací stránku:

cd /var/www/sites/site1/

mv index.html index.php

Přidejte do souboru „/var/www/sites/site1/index.php“ následující řádek 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()“ , interpret PHP funguje správně. Nyní pojď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

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

Instalace a konfigurace MySQL (MariaDB).

Pak budeme muset provést počáteční konfiguraci zabezpečení MariaDB a nastavit heslo pro uživatele „root“ , zakázat vzdálený přístup a smazat všechny účty hostů.

mysql_secure_installation

V prvním kroku musíme zadat heslo uživatele „root“ pro přístup k DBMS nebo stisknout Enter, pokud heslo není zadáno. Protože po instalaci pro uživatele „root“ heslo nastaveno není , stačí stisknout „Enter“.

Upozorňujeme, že v MariaDB již existují vlastní účty, které nemají nic společného s účty operačního systému. Jediný uživatel, se kterým se v MariaDB setkáváme, je tedy „root“.

  MySQL: Vytvořte účet a nastavte heslo

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

  MySQL: Vytvořte účet a nastavte heslo

Na všechny zbývající otázky až do samého konce odpovězte „A“ .

Konfigurace je hotová!

Přístupové údaje MariaDB:

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

konfigurace phpMyAdmin

1. Instalace

Nainstalujme si 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řete oficiální webové stránky projektu „ https://www.phpmyadmin.net/ “ a stáhněte si nejnovější archiv.

instalace a konfigurace phpMyAdmin

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

Rozarchivujte složku a přejmenujte ji na „phpMyAdmin“ . Nezapomeňte nainstalovat utilitu „unzip“ . Po rozarchivování 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 povolte přístup všem. Pokud tak neučiníte, phpMyAdmin nahlásí odepření 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 se k phpMyAdmin můžeme přihlásit zde „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

Upozorňujeme, že název databáze ve druhém požadavku je v zákulisí „… ON `phpmyadmin` .* TO 'pma'@'localhost' IDENTIFIED BY …“,

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 údaje v konfiguračním souboru „config.inc.php“.

Pak 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řejděte do sekce „Import“ , klikněte na „Vybrat soubor“ a v kořenovém adresáři phpMyAdmin vyberte soubor „sql/create_tables.sql“ . Na vašem počítači by se měla nacházet složka „phpMyAdmin“ se soubory. V případě potřeby ji rozarchivujte.

konfigurace phpmyadmin

Klikněte na tlačítko „Další“ pro zahájení importu.

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 provedeme následující změny:

Nastavte náhodnou 32místnou hodnotu pro atribut „$cfg['blowfish_secret']“ . Použijte pro to libovolný generátor hesel.

Jak nainstalovat a nakonfigurovat WordPress na serveru Linux

Odeberte komentáře ze všech řádků sekce „phpMyAdmin configuration storage settings“ a odpovídajícím způsobem nastavte přihlašovací jméno a heslo servisního účtu MariaDB pro atributy „controluser“ a „controlpass“ . V našem případě se jedná o pmaservice 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í webové stránky WordPress „ https://ru.wordpress.org/ “ a stáhněte si archiv do svého počítače.

Nahrajte archiv na server do složky „/var/www/sites/“ a rozarchivujte jej do složky „wordpress “.

Zkopírujte obsah kořenové složky „/var/www/sites/wordpress/“ webu „/var/www/sites/site1/“.

Protože jsme soubory zkopírovali přes konzoli s root oprávněními, změníme vlastníka složky „/var/www/sites/“ včetně obsahu složky „virtual“ . To je nutné pro povolení plného přístupu k 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 na „Oprávnění“.

Vytvořte databázi pro WordPress

Poté klikněte na „Přidat uživatelský účet“.

V otevřeném okně zadejte přihlašovací jméno a heslo ( wpservice / Qwe123 ), zaškrtněte políčko „Udělit všechna oprávnění v souboru wordpress_db“ a klikněte na „Další“.

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

Na další stránce klikněte na „Zrušit vše“ pro resetování všech oprávnění na úrovni databáze a klikně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 soubor „wp-config.php“ 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

V prohlížeči otevřete následující odkaz „http://[ip_adresa_serveru]/wp-admin/install.php“.

Vyplňte všechna pole a klikněte na „Instalovat WordPress“ . Nastavte náhodné uživatelské jméno a heslo. V našem případě je to wpadmin a Qwe123.

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

Nainstalujte CMS WordPress na linuxový server

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

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
Další č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.