[Õpetus] Kuidas paigaldada LAMP Stack Ubuntu 20.04 serverisse/töölauale

root

Huviline
Joined
5 October 2021
Messages
318
See õpetus näitab, kuidas paigaldada LAMP Stack Ubuntu 20.04 LTS-i. LAMP Stack on tarkvaratööriistade komplekt. LAMP tähistab Linuxi, Apache, MariaDB/MySQL ja PHP-d, mis kõik on avatud lähtekoodiga ja tasuta kasutamiseks. See on kõige levinum tarkvarapakk, mis toidab dünaamilisi veebisaite ja veebirakendusi. Linux on operatsioonisüsteem; Apache on veebiserver; MariaDB/MySQL on andmebaasiserver ja PHP on serveripoolne skriptikeel, mis vastutab dünaamiliste veebilehtede loomise eest.

1. Tarkvarapakettide värskendamine

Enne LAMP Stacki paigaldamist on hea värskendada hoidlaid ja tarkvarapakette. Käivitage oma Ubuntus järgmised käsud.
Code:
sudo apt update
Code:
sudo apt upgrade

2. Paigalda Apache veebiserver

Apache veebiserveri paigaldamiseks sisestage järgmine käsk. Pakett apache2-utils paigaldab mõned kasulikud utiliidid.
Code:
sudo apt install -y apache2 apache2-utils

Pärast selle paigaldamist peaks Apache automaatselt käivituma. Kontrollige selle olekut systemctl-ga.
Code:
systemctl status apache2

Näidisväljund:
naidisvaljund.jpg

Kui see ei tööta, kasutage käivitamiseks käsku systemctl.
Code:
sudo systemctl start apache2

Samuti on hea mõte lubada Apache süsteemi alglaadimise ajal automaatselt käivituda.
Code:
sudo systemctl enable apache2

Kontrollige Apache versiooni:
Code:
apache2 -v

Väljund:
HTML:
Server version: Apache/2.4.41 (Ubuntu)
Server built: 2020-03-05T18:51:00

Nüüd sisestage brauseri aadressiribale oma Ubuntu 20.04 serveri avalik IP aadress. Peaksite nägema teadet "It works!" Veebileht, mis tähendab, et Apache veebiserver töötab korralikult. Kui paigaldad LAMP-i oma kohalikku Ubuntu 20.04 arvutisse, sisestage brauseri aadressiribale 127.0.0.1 või localhost.

localhost.jpg

Kui ühenduse loomisest keeldutakse või seda ei õnnestu luua, võib tulemüür takistada TCP porti 80 sissetulevaid päringuid. Kui kasutate iptablesi tulemüüri, peate TCP pordi 80 avamiseks käivitama järgmise käsu:
Code:
sudo iptables -I INPUT -p tcp --dport 80 -j ACCEPT

Kui kasutate UFW tulemüüri, käivitage see käsk TCP pordi 80 avamiseks:
Code:
sudo ufw allow http

Nüüd peame määrama www-data (Apache kasutaja) dokumendi juurfaili (muidu tuntud kui veebijuure) omanikuks. Vaikimisi kuulub see juurkasutajale.
Code:
sudo chown www-data:www-data /var/www/html/ -R

Vaikimisi kasutab Apache oma globaalse serverinimena süsteemi hostinime. Kui süsteemi hostinime ei saa DNS-is lahendada, näete pärast käsu sudo apache2ctl -t käivitamist tõenäoliselt järgmist tõrget:
HTML:
AH00558: apache2: Could not reliably determine the server's fully qualified domain name, using 127.0.0.1. Set the 'ServerName' directive globally to suppress this message

Selle probleemi lahendamiseks saame Apache-s määrata globaalse ServerName. Uue konfiguratsioonifaili loomiseks kasutage Nano käsurea tekstiredaktorit.
Code:
sudo nano /etc/apache2/conf-available/servername.conf

Lisage sellesse faili järgmine rida.
HTML:
ServerName localhost

Salvestage ja sulgege fail. Faili salvestamiseks Nano tekstiredaktoris vajutage klahvikombinatsiooni Ctrl+O ja seejärel vajutage kinnitamiseks sisestusklahvi. Väljumiseks vajutage klahvikombinatsiooni Ctrl+X. Seejärel lubage see konfiguratsioonifail.
Code:
sudo a2enconf servername.conf

Laadige Apache uuesti, et muudatus jõustuks.
Code:
sudo systemctl reload apache2

Kui nüüd käivitate uuesti käsu sudo apache2ctl -t, ei näe te ülaltoodud veateadet.

3. Paigalda MariaDB andmebaasiserver

MariaDB on MySQL-i asendaja. Selle on välja töötanud endised MySQL-i meeskonna liikmed, kes on mures, et Oracle võib muuta MySQL-i suletud lähtekoodiga tooteks. MariaDB paigaldamiseks Ubuntu 20.04 sisestage järgmine käsk:
Code:
sudo apt install mariadb-server mariadb-client

Pärast selle paigaldamist peaks MariaDB server automaatselt käivituma. Selle oleku kontrollimiseks kasutage systemctl.
Code:
systemctl status mariadb

Väljund:
valjund.jpg

Kui see ei tööta, käivitage see järgmise käsuga:
Code:
sudo systemctl start mariadb

MariaDB automaatse käivitumise lubamiseks alglaadimise ajal käivitage:
Code:
sudo systemctl enable mariadb

Nüüd käivitage paigaldusjärgne turvaskript:
Code:
sudo mysql_secure_installation

Kui see palub teil sisestada MariaDB juurparooli, vajutage sisestusklahvi, kuna juurparool ei ole veel määratud. Seejärel sisestage MariaDB serveri juurparooli määramiseks y.

mysqlsecure.jpg

Järgmisena saate kõigile ülejäänud küsimustele vastamiseks vajutada sisestusklahvi, mis eemaldab anonüümse kasutaja, keelab kaugelt juurdepääsu ja eemaldab testandmebaasi. See samm on MariaDB andmebaasi turvalisuse põhinõue. (Pange tähele, et Y on suurtähtedega, mis tähendab, et see on vaikevastus)

mysqlsecure2.jpg

Vaikimisi kasutab Ubuntu MariaDB pakett kasutaja sisselogimise autentimiseks unix_socketit, mis tähendab põhimõtteliselt, et saate MariaDB konsooli sisse logimiseks kasutada operatsioonisüsteemi kasutajanime ja parooli. Seega saate sisselogimiseks käivitada järgmise käsu ilma MariaDB juurparooli andmata:
Code:
sudo mariadb -u root

Väljumiseks sisestage:
Code:
exit;

Kontrollige MariaDB serveri versiooni:
Code:
mariadb --version

Väljundiks näide:
HTML:
mariadb Ver 15.1 Distrib 10.3.22-MariaDB, for debian-linux-gnu (x86_64) using readline 5.2

4. Paigalda PHP7.4

PHP7.4 ja mõnede tavaliste PHP moodulite paigaldamiseks sisestage järgmine käsk:
Code:
sudo apt install php7.4 libapache2-mod-php7.4 php7.4-mysql php-common php7.4-cli php7.4-common php7.4-json php7.4-opcache php7.4-readline

Lubage Apache php7.4 moodul ja taaskäivitage Apache veebiserver:
Code:
sudo a2enmod php7.4
Code:
sudo systemctl restart apache2

Kontrollige PHP versiooni:
Code:
php --version

Väljund:
HTML:
PHP 7.4.3 (cli) (built: Mar 26 2020 20:24:23) ( NTS )
Copyright (c) The PHP Group
Zend Engine v3.4.0, Copyright (c) Zend Technologies
with Zend OPcache v7.4.3, Copyright (c), by Zend Technologies

PHP skriptide testimiseks Apache serveriga peame dokumendi juurkataloogis looma info.php faili.
Code:
sudo nano /var/www/html/info.php

Kleepige faili järgmine PHP kood:
Code:
<?php phpinfo(); ?>

Faili salvestamiseks Nano tekstiredaktoris vajutage klahvikombinatsiooni Ctrl+O ja seejärel vajutage kinnitamiseks sisestusklahvi. Väljumiseks vajutage klahvikombinatsiooni Ctrl+X. Nüüd sisestage brauseri aadressiribale server-ip-address/info.php. Asendage serveri IP aadress oma tegeliku IP aadressiga. Kui kasutate seda õpetust kohalikus arvutis, sisestage 127.0.0.1/info.php või localhost/info.php
Peaksite nägema oma serveri PHP teavet. See tähendab, et PHP skriptid saavad Apache veebiserveriga korralikult töötada.

php74.jpg

PHP-FPM käivitamine Apache-ga
PHP koodi käitamiseks Apache veebiserveriga on põhimõtteliselt kaks võimalust:
  • Apache PHP moodul
  • PHP-FPM
Ülaltoodud sammudes kasutatakse PHP koodi käsitlemiseks Apache PHP7.4 moodulit, mis on tavaliselt korras. Kuid mõnel juhul peate käivitama PHP koodi PHP-FPM-iga. Vaatame kuidas seda teha.

Keela Apache PHP7.4 moodul.
Code:
sudo a2dismod php7.4

Paigaldage PHP-FPM.
Code:
sudo apt install php7.4-fpm

Luba moodul proxy_fcgi ja setenvif.
Code:
sudo a2enmod proxy_fcgi setenvif

Lubage konfiguratsioonifail /etc/apache2/conf-available/php7.4-fpm.conf.
Code:
sudo a2enconf php7.4-fpm

Muudatuste jõustumiseks taaskäivitage Apache.
Code:
sudo systemctl restart apache2

Kui värskendate nüüd oma brauseris info.php lehte, siis näete, et serveri API on Apache 2.0 Handler asemel FPM/FastCGI, mis tähendab, et Apache veebiserver edastab PHP päringud PHP-FPM-le.

php74fpm.jpg

Õnnitlused! Olete edukalt paigaldanud LAMP Stack (Apache, MariaDB ja PHP7.4) Ubuntu 20.04-sse. Oma serveri turvalisuse huvides peaksite uudishimulike pilkude vältimiseks kohe faili info.php kustutama.
Code:
sudo rm /var/www/html/info.php
 
Back
Top