LAMP programinės įrangos rinkinys, kurį sudaro Apache web serverio tarnyba, MariaDB duomenų bazių valdymo tarnyba ir PHP programinės kalbos paketas. Atlikus šių tarnybų diegimą serveris bus pilnai paruoštas svetainės diegimui į Ubuntu 20.04 serverį.
0. Preliminarūs reikalavimai
* Virtualiai dedikuotas serveris su įdiegtu mūsų parengtu Ubuntu 20.04 operacinės sistemos šablonu.
* Atskiras naudotojas turintis
sudo teises. Naudotojo kūrimą galite atlikti pagal šią
instrukciją.
1. Serverio paruošimas
Prieš atliekant tarnybų diegimą turite atlikti serverio atnaujinimą. Terminale paleiskite šią komandą:
sudo apt update && sudo apt upgrade -y
2. Apache diegimas
Visų pirma atlikite diegimą:
sudo apt install apache2 -y
Ir tada paleiskite aktyvavimo komandą, bei nustatykite, kad tarnyba būtų automatiškai aktyvuojame po serverio perkrovimo:
sudo systemctl start apache2.service
sudo systemctl enable apache2.service
3. MariaDB diegimas
Atlikite MariaDB tarnybos diegimą paleisdami šią komandą:
sudo apt install mariadb-server mariadb-client -y
Sekančia komanda įjunkite MariaDB aktyvavimą po perkrovimą:
sudo systemctl enable mariadb.service
Tada galite atlikti duomenų bazės saugumo nustatymus paleidę šią komandą:
sudo mysql_secure_installation
Jums bus pateikiami šie klausimai:
Enter current password for root (enter for none):
* Kolkas nėra nustatyto slaptažodžio, todėl paspauskite Enter.
Set root password? [Y/n]
* Spauskite Enter naujo slaptažodžio nustatymui.
New password:
Re-enter new password:
Password updated successfully!
* Suveskite naują slaptažodį ir jį pakartokite.
Remove anonymous users? [Y/n]
* Jūsų bus perklausta ar norite pašalinti anoniminius naudotojus. Pasirinkite Enter.
Disallow root login remotely? [Y/n]
* Tada bus perklausiama ar leisti root naudotojui prisijungti per nuotolį. Rekomenduojame pasirinkti Enter.
Remove test database and access to it? [Y/n]
* Taip pat bus perklausiama ar pašalinti testinę duomenų bazę. Pasirinkite Enter.
Reload privilege tables now? [Y/n]
* Paskutinis klausimas - ar norite jog būtų perkraunamos lentelių privilegijos. Pasirinkite Enter.
4. PHP paketų diegimas
Pagrindinių paketų ir reikalingų plėtinių diegimui atlikti paleiskite šią komandą:
sudo apt install php php-{bcmath,bz2,intl,gd,mbstring,mysql,zip,fpm} -y
Kai diegimas bus atliktas, perkraukite Apache tam, kad būtų užkraunamas PHP veikimas.
sudo systemctl restart apache2.service
5. Testavimas
* Apache patikrinimui atsidarykite serverio IP adresą naršyklėje:
http://serverio_ip_adresas
Jums turi būti pateikiamas Apache2 Ubuntu Default Page.
* PHP patikrinimui sukurkite atskirą failą įterpiant PHP informacijos atvaizdavimo kodą. Tai galite atlikti naudodami šią komandą:
echo '<?php phpinfo(); ?>' > /var/www/html/info.php
Prisijunkite prie serverio su
root tesėmis. Patikrinti ar PHP veikia korektiškai bei pamatyti, kokia PHP versija buvo įdiegta galite atsidarę šį failą naršyklėje:
http://serverio_ip_adresas/info.php
* Duomenų bazės testavimui prisijunkite prie duomenų bazės:
mysql -u root -p -h localhost
Sukurkite testinį naudotoją:
CREATE USER 'testinis_naudotojas'@'localhost' IDENTIFIED BY 'slaptazodis';
Sukurkite testinę duomenų bazę:
CREATE DATABASE testine_db;
Nustatykite GRANT teises testiniam naudotojui testinei duomenų bazei:
GRANT ALL PRIVILEGES ON
testine_db
.* TO '
testinis_naudotojas
'@'localhost';
Ir uždarykite duomenų bazę:
Prisijungę prie serverio naudodami root naudotoją, sukurkite failą naudodami šia komandą:
nano /var/www/html/db_testas.php
Ir pridėkite šį programinį kodą:
<?php
$conn = new mysqli('localhost', 'testinis_naudotojas', 'slaptazodis', 'testine_db');
if ($conn->connect_error) {
die("Klaida: " . $conn->connect_error);
}
echo "Veikia";
?>
Ir tada naršyklėje atsidarykite adresą:
http://serverio_ip_adresas/db_testas.php
Jeigu bus pateikiamas atsakymas "Veikia", reiškia duomenų bazės tarnyba, PHP tarnyba ir Apache tarnybos veikia korektiškai tarpusavyje.