Jak nainstalovat LAMP Apache, MySQL, PHP v Ubuntu 22.04. V této příručce se dozvíte, jak nainstalovat Apache2, MySQL a PHP 8.1.
Nainstalujete také některá běžná rozšíření PHP a upravíte konfigurace PHP. Nainstalujte si PhpMyAdmin a nakonec zabezpečíte své nastavení pomocí Let’s Encrypt SSL a nakonfigurujete přesměrování HTTPS.
Toto nastavení je testováno v cloudu Google, takže bude fungovat na všech cloudových hostingových službách, jako je AWS, Azure nebo jakékoli VPS nebo na jakýchkoli dedikovaných serverech se systémem Ubuntu 22.04.
Předpoklady
- Kořenový přístup k vašemu serveru nebo uživateli sudo.
Krok 1:Nastavení inicializace
Začněte aktualizací balíčků na nejnovější dostupnou verzi pomocí následujícího příkazu.
sudo apt update sudo apt upgrade
Po aktualizaci nastavení můžete zahájit nastavení.
Krok 2:Nainstalujte Apache
Nainstalujte Apache pomocí následujícího příkazu.
sudo apt install apache2
Tím se nainstaluje apache2
a všechny požadované závislosti.
Krok 3:Nastavení brány firewall
Nyní můžete nastavit Uncomplicated Firewall (UFW) s Apache a povolit veřejný přístup na výchozích webových portech pro HTTP
a HTTPS
sudo ufw app list
Zobrazí se všechny uvedené aplikace.
Output
Available applications:
Apache
Apache Full
Apache Secure
OpenSSH
- Apache :Tento profil otevírá port
80
(normální, nešifrovaný webový provoz) - Apache Full :Tento profil otevírá oba porty
80
(normální, nešifrovaný webový provoz) a port443
(provoz šifrovaný TLS/SSL) - Apache Secure :Tento profil otevírá pouze port
443
(provoz šifrovaný TLS/SSL) - OpenSSH :Tento profil otevírá port
22
pro přístup SSH.
Pokud nebudete používat SSL, musíte povolit pouze profil Apache.
Nyní povolíme Apache Full.
sudo ufw allow OpenSSH sudo ufw allow 'Apache Full'
sudo ufw enable
Pomocí tohoto příkazu můžete zobrazit stav UFW.
sudo ufw status
Výstup uvidíte následovně.
Output
Status: active
To Action From
-- ------ ----
Apache Full ALLOW Anywhere
OpenSSH ALLOW Anywhere
Apache Full (v6) ALLOW Anywhere (v6)
OpenSSH (v6) ALLOW Anywhere (v6)
Krok:4 Zkontrolujte instalaci Apache
Protože jsme v kroku 2 nainstalovali Apache, měl by být spuštěn automaticky a již by měl být v provozu.
Zkontrolujte verzi Apache pomocí níže uvedeného příkazu
sudo apachectl -v
Output Server version: Apache/2.4.52 (Ubuntu) Server built: 2022-03-25T00:35:40
Každý proces v Apache je spravován pomocí systemctl
příkaz. Zkontrolujte stav Apache pomocí následujícího příkazu.
sudo systemctl status apache2
Output ● apache2.service - The Apache HTTP Server Loaded: loaded (/lib/systemd/system/apache2.service; enabled; vendor preset: enabled) Active: active (running) since Fri 2022-04-29 00:34:49 UTC; 2min 52s ago Docs: https://httpd.apache.org/docs/2.4/ Main PID: 12782 (apache2) Tasks: 55 (limit: 1151) Memory: 5.1M CPU: 52ms CGroup: /system.slice/apache2.service ├─12782 /usr/sbin/apache2 -k start ├─12784 /usr/sbin/apache2 -k start └─12785 /usr/sbin/apache2 -k start
Nyní máme Apache nainstalovaný a nakonfigurovaný Firewall.
Krok 5:Instalace MySQL
V Ubuntu 22.04 je MySQL 8 ve výchozím nastavení součástí úložišť Jammy Jellyfish, takže ji můžete snadno nainstalovat pomocí apt install
příkaz.
sudo apt install mysql-server
Po dokončení instalace se služba MySQL automaticky spustí. Chcete-li ověřit, že server MySQL běží, zadejte:
sudo service mysql status
Výstup by měl ukazovat, že služba je povolena a spuštěna:
● mysql.service - MySQL Community Server Loaded: loaded (/lib/systemd/system/mysql.service; enabled; vendor preset: enabled) Active: active (running) since Fri 2022-04-29 00:38:45 UTC; 11s ago Process: 13836 ExecStartPre=/usr/share/mysql/mysql-systemd-start pre (code=exited, statu> Main PID: 13844 (mysqld) Status: "Server is operational" Tasks: 38 (limit: 1151) Memory: 351.4M CPU: 1.043s CGroup: /system.slice/mysql.service └─13844 /usr/sbin/mysqld
Zkontrolujte verzi MySQl pomocí níže uvedeného příkazu.
sudo mysql -V
Output mysql Ver 8.0.28-0ubuntu4 for Linux on x86_64 ((Ubuntu))
Krok 6:Zabezpečení MySQL
Instalace MySQL je dodávána se skriptem s názvem mysql_secure_installation
což vám umožní snadno zlepšit zabezpečení serveru MySQL.
sudo mysql_secure_installation
Budete požádáni o konfiguraci VALIDATE PASSWORD PLUGIN
který se používá k testování síly hesel uživatelů MySQL a ke zlepšení zabezpečení.
Stiskněte y
pokud chcete nastavit zásuvný modul pro ověření hesla nebo jakýkoli jiný klíč pro přechod k dalšímu kroku.
Existují tři úrovně zásad ověřování hesla, nízká, střední a silná.
Zadejte 2 pro ověření silného hesla.
Na další výzvě budete požádáni o nastavení hesla pro uživatele root MySQL.
Pokud nastavíte plugin pro ověření hesla, skript vám ukáže sílu vašeho nového hesla. Zadejte y
pro potvrzení hesla.
Dále budete požádáni o odebrání anonymního uživatele, omezení přístupu uživatele root k místnímu počítači, odebrání testovací databáze a opětovné načtení tabulek oprávnění. Měli byste odpovědět y
na všechny otázky.
Krok 7:Nainstalujte PHP
Ve výchozím nastavení má Ubuntu 22.04 nejnovější úložiště PHP 8.1. PHP tedy můžete nainstalovat pomocí následujícího příkazu.
sudo apt install php8.1-fpm php8.1 libapache2-mod-php8.1 php8.1-common php8.1-mysql php8.1-xml php8.1-xmlrpc php8.1-curl php8.1-gd php8.1-imagick php8.1-cli php8.1-imap php8.1-mbstring php8.1-opcache php8.1-soap php8.1-zip php8.1-intl php8.1-bcmath unzip -y
Jakmile je PHP nainstalováno, můžete zkontrolovat verzi pomocí následujícího příkazu.
php -v
Output PHP 8.1.5 (cli) (built: Apr 7 2022 17:46:26) (NTS) Copyright (c) The PHP Group Zend Engine v4.1.5, Copyright (c) Zend Technologies with Zend OPcache v8.1.5, Copyright (c), by Zend Technologies
Krok 8:Konfigurace PHP
Nyní nakonfigurujeme PHP pro webové aplikace změnou některých hodnot v php.ini
soubor.
Pro PHP 7.4 s Apache php.ini
umístění bude v následujícím adresáři.
sudo nano /etc/php/8.1/apache2/php.ini
Stiskněte F6
pro vyhledávání v editoru a pro lepší výkon aktualizujte následující hodnoty.
upload_max_filesize = 32M
post_max_size = 48M
memory_limit = 256M
max_execution_time = 600
max_input_vars = 3000
max_input_time = 1000
Jakmile upravíte nastavení PHP, musíte restartovat Apache, aby se změny projevily.
Připravte se na roli odborníka na informační technologie s operačním systémem Linux
Krok 9:Konfigurace Apache
Zakázat výchozí konfiguraci Apache.
sudo a2dissite 000-default
Vytvořte adresáře webových stránek.
sudo mkdir -p /var/www/html/domainname/public
Nastavte správná oprávnění.
sudo chmod -R 755 /var/www/html/domainname sudo chown -R www-data:www-data /var/www/html/domainname
Vytvořte novou konfiguraci virtuálního hostitele.
sudo nano /etc/apache2/sites-available/domainname.conf
Vložte následující konfigurace do nového souboru.
<VirtualHost *:80> ServerAdmin [email protected] ServerName domainname.com ServerAlias www.domainname.com DocumentRoot /var/www/html/domainname/public <Directory /var/www/html/domainname/public> Options Indexes FollowSymLinks AllowOverride All Require all granted </Directory> ErrorLog ${APACHE_LOG_DIR}/error.log CustomLog ${APACHE_LOG_DIR}/access.log combined </VirtualHost>
Povolte novou konfiguraci.
sudo a2ensite domainname.conf
Krok 10:Nainstalujte PhpMyAdmin
PhpMyAdmin je nástroj pro snadnou správu databáze MySQL. Můžete jej nainstalovat pomocí níže uvedeného příkazu.
sudo apt install phpmyadmin
Zkopírujte konfiguraci PhpMyAdmin pro Apache.
sudo cp /etc/phpmyadmin/apache.conf /etc/apache2/conf-available/phpmyadmin.conf
Povolte konfiguraci.
sudo a2enconf phpmyadmin.conf
Restartujte Apache.
sudo service apache2 restart
Nyní máte nainstalovaný PhpMyAdmin, to může být přístupné s touto cestou yourdomain.com/phpmyadmin
.
Krok 11:Nainstalujte Let’s Encrypt SSL
HTTPS je protokol pro zabezpečenou komunikaci mezi serverem (instance) a klientem (webovým prohlížečem). Díky zavedení Let’s Encrypt, který poskytuje bezplatné certifikáty SSL, si HTTPS osvojí všichni a také poskytuje důvěru vašemu publiku.
sudo apt install python3-certbot-apache
Nyní jsme nainstalovali Certbot by Let’s Encrypt pro Ubuntu 22.04, spusťte tento příkaz, abyste získali své certifikáty.
sudo certbot --apache --agree-tos --redirect -m [email protected] -d domainname.com -d www.domainname.com
Tento příkaz nainstaluje bezplatné SSL, nakonfiguruje přesměrování na HTTPS a restartuje server Apache.
Krok 12:Obnovení certifikátu SSL
Certifikáty poskytované Let’s Encrypt jsou platné pouze 90 dní, takže je musíte často obnovovat. Pojďme tedy otestovat funkci obnovení pomocí následujícího příkazu.
sudo certbot renew --dry-run
Tento příkaz otestuje vypršení platnosti certifikátu a nakonfiguruje funkci automatického obnovení.
Krok:13:Otestujte nastavení
Jakmile provedete potřebné kroky, můžete vytvořit nový testovací soubor PHP ve vašem webovém adresáři.
sudo nano /var/www/html/domainname/public/info.php
Vložte níže uvedený kód do souboru.
<?php phpinfo();
Uložte soubor.
Nyní pokračujte a zkontrolujte název své domény pomocí info.php
v adrese URL (domainname.com/info.php
).
Uvidíte, že vaše doména byla přesměrována na HTTPS, a uvidíte podrobnosti o PHP.
Staňte se Certifikovaným profesionálem AWS s tímto snadno naučitelným kurzem.
Závěr
Nyní jste se naučili, jak nainstalovat LAMP stack Ubuntu 22.04. Také jste se naučili nainstalovat a nakonfigurovat PhpMyAdmin a zabezpečit instalaci pomocí Let’s Encrypt SSL.
Díky za váš čas. Pokud narazíte na jakýkoli problém nebo zpětnou vazbu, zanechte prosím komentář níže.