Jak zainstalować Linux, Apache, MariaDB, PHP (stos LAMP) na Debianie 11

Jak zainstalować Linux, Apache, MariaDB, PHP (stos LAMP) na Debianie 11

Wprowadzenie

LAMP jest powszechnie używanym stosem internetowym składającym się z Linuksa, Apache, MariaDB i PHP. Zapewnia niezawodną i skalowalną platformę do hostowania stron internetowych i aplikacji. W tym samouczku omówimy szczegółowe instrukcje dotyczące instalacji stosu LAMP na najnowszej wersji Debiana 11 (Bullseye).

Instalacja stosu LAMP obejmuje następujące kroki:

– Aktualizacja systemu
– Instalacja pakietów LAMP
– Konfiguracja Apache
– Konfiguracja MariaDB
– Instalacja i konfiguracja PHP

Instalacja pakietów LAMP

Po aktualizacji systemu możemy przystąpić do instalacji niezbędnych pakietów LAMP. Możemy to zrobić za pomocą następującego polecenia:

bash
sudo apt update
sudo apt install apache2 mariadb-server mariadb-client php php-common php-mysql

To polecenie zainstaluje wszystkie wymagane pakiety, w tym serwer Apache, serwer bazy danych MariaDB, interpreter PHP oraz niezbędne moduły PHP.

Konfiguracja Apache

Po zainstalowaniu pakietów musimy skonfigurować serwer Apache. Domyślny plik konfiguracyjny Apache znajduje się w /etc/apache2/apache2.conf. Możemy go edytować za pomocą naszego ulubionego edytora tekstu, takiego jak vim lub nano:

bash
sudo vim /etc/apache2/apache2.conf

Dodajemy lub modyfikujemy następujące dyrektywy w pliku konfiguracyjnym:


DocumentRoot /var/www/html
<Directory /var/www/html>
Options Indexes FollowSymLinks
AllowOverride All
</Directory>

Konfiguracja MariaDB

Następnie skonfigurujemy serwer bazy danych MariaDB. Musimy najpierw zabezpieczyć instalację MariaDB, uruchamiając następujący skrypt:

bash
sudo mysql_secure_installation

Ten skrypt poprosi nas o ustawienie hasła roota MariaDB i wykonanie kilku innych kroków zabezpieczających.

Następnie tworzymy bazę danych i użytkownika bazy danych dla naszej aplikacji:

bash
sudo mysql -u root -p
CREATE DATABASE moja_baza_danych;
CREATE USER 'moj_uzytkownik'@'localhost' IDENTIFIED BY 'haslo_uzytkownika';
GRANT ALL PRIVILEGES ON moja_baza_danych.* TO 'moj_uzytkownik'@'localhost';
FLUSH PRIVILEGES;
EXIT;

Instalacja i konfiguracja PHP

Na koniec instalujemy i konfigurujemy PHP. Domyślny plik konfiguracyjny PHP znajduje się w /etc/php/7.4/apache2/php.ini. Możemy go edytować za pomocą naszego ulubionego edytora tekstu:

bash
sudo vim /etc/php/7.4/apache2/php.ini

Usuwamy komentarz lub modyfikujemy następujące dyrektywy w pliku konfiguracyjnym:


memory_limit = 128M
upload_max_filesize = 20M
max_execution_time = 30

Sprawdzenie instalacji

Po skonfigurowaniu całego stosu możemy sprawdzić, czy działa poprawnie. W przeglądarce internetowej przechodzimy do adresu http://localhost. Powinniśmy zobaczyć stronę powitalną serwera Apache.

Możemy również przetestować połączenie z bazą danych, tworząc plik test.php w katalogu /var/www/html:

php
<?php
$servername = "localhost";
$username = "moj_uzytkownik";
$password = "haslo_uzytkownika";
$dbname = "moja_baza_danych";

// Utwórz połączenie
$conn = new mysqli($servername, $username, $password, $dbname);

// Sprawdź, czy połączenie się powiodło
if ($conn->connect_error) {
die("Błąd połączenia z bazą danych: " . $conn->connect_error);
}

// Wykonaj zapytanie
$sql = "SELECT * FROM users";
$result = $conn->query($sql);

// Wyświetl wyniki
if ($result->num_rows > 0) {
// Dane są dostępne
while($row = $result->fetch_assoc()) {
echo "ID: " . $row["id"] . " - Nazwa: " . $row["name"] . " - Email: " . $row["email"] . "<br>";
}
} else {
// Dane nie są dostępne
echo "Brak danych w bazie danych.";
}

// Zamknij połączenie
$conn->close();
?>

Przeładowujemy następnie serwer Apache za pomocą:

bash
sudo systemctl reload apache2

Otwieramy ponownie przeglądarkę i przechodzimy do adresu http://localhost/test.php. Powinniśmy zobaczyć wyniki zapytania do bazy danych.

Konkluzja

W tym samouczku omówiliśmy szczegółowe instrukcje dotyczące instalacji i konfiguracji stosu LAMP na Debianie 11. LAMP jest solidną i elastyczną platformą, która zasila niezliczone witryny i aplikacje internetowe. Stosując się do kroków opisanych w tym samouczku, możesz łatwo uruchomić własny stos LAMP i rozpocząć tworzenie dynamicznych i interaktywnych aplikacji internetowych.

FAQ

Czy mogę zainstalować stos LAMP na innych dystrybucjach Linuksa?

Tak, ten samouczek można dostosować do innych dystrybucji Linuksa, takich jak Ubuntu, CentOS i Fedora.

Jak mogę uaktualnić stos LAMP do najnowszej wersji?

Użyj polecenia sudo apt update && sudo apt upgrade w terminalu, aby zaktualizować wszystkie zainstalowane pakiety, w tym LAMP.

Jak dodać dodatkowe moduły PHP?

Użyj polecenia sudo apt install php-nazwa_modulu, aby zainstalować dodatkowe moduły PHP.

Jak włączyć PHP w serwerze Nginx zamiast Apache?

Zainstaluj pakiet php-fpm i zmodyfikuj plik konfiguracyjny Nginx, aby obsługiwał PHP.

Jak zoptymalizować wydajność stosu LAMP?

Zwiększ rozmiar pamięci cache, używaj pamięci podręcznej opcache PHP i zmień ustawienia puli wątków Apache.

Jak zabezpieczyć stos LAMP?

Włącz HTTPS, używaj zapory sieciowej, aktualizuj oprogramowanie i twórz regularne kopie zapasowe.

Jak rozwiązywać problemy ze stosem LAMP?

Sprawdź pliki dziennika serwera Apache i PHP, użyj poleceń tail -f i grep do śledzenia błędów i skontaktuj się z pomocą techniczną swojego dostawcy hostingu.

Czy mogę używać innych serwerów baz danych zamiast MariaDB?

Tak, można użyć MySQL, PostgreSQL lub MongoDB zamiast MariaDB.