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.