Jak zainstalować Linux, Nginx, MySQL i PHP (LEMP Stack) na Ubuntu 22.04

Jak zainstalować Linux, Nginx, MySQL i PHP (LEMP Stack) na Ubuntu 22.04

System operacyjny Linux jest bardzo popularnym i szeroko używanym systemem operacyjnym dla serwera. Obsługuje większość stron internetowych, w tym niektóre z najbardziej znanych, takich jak Yahoo, Google i Facebook. Logiczna lampa akronimowa jest powszechnie używana w odniesieniu do mieszanki bezpłatnego i otwartego oprogramowania, które jest często używane do tworzenia architektury serwera, która może obsługiwać dynamiczne strony internetowe, takie jak te zbudowane na PHP, MySQL i Apache.

Każda litera w akronimie odnosi się do osobnego pakietu oprogramowania: powiedziawszy, zobaczmy, jak możemy zainstalować i skonfigurować stos Lemp na Ubuntu.

Warunki wstępne

Zakładając, że masz Ubuntu 22.04 system Linux z dostępem sudo (lub root) uprzywilejowanym.

Uzyskaj dostęp do systemu i otwórz terminal. Dobrze będzie aktualizować pamięć podręczną menedżera pakietów i aktualizację aktualnie zainstalowanych pakietów. Aby to wykonać:

sudo apt aktualizacja && sudo apt aktualizację  

Zacznijmy instalację stosu Lemp (Linux, Nginx, MySQL i PHP) na Ubuntu 22.04 JAMMY Jellyfish Linux System.

Krok 1 - Instalowanie Nginx

Najpierw zainstalujemy najnowszy serwer WWW Nginx w naszym systemie. Użyj następujących poleceń, aby dodać PPA do instalacji najnowszej wersji Nginx w Ubuntu 22.04 Linux.

Użyj następujących poleceń, aby zainstalować serwer WWW Nginx.

sudo apt instal nginx  

To zainstaluje serwer WWW Nginx i uruchomi usługę.

Teraz musisz zezwolić na porty WebServer w zaporze. Aby umożliwić porty 80 i 443 w zaporze UFW, wykonaj następujące polecenia.

sudo ufw zezwalaj na 80/tcp  sudo ufw zezwalaj na 43/tcp  

Otwórz przeglądarkę internetową w systemie i wpisz adres IP serwera na pasku adresu. Otrzymasz domyślną stronę serwera Nginx

Domyślna strona Nginx

Krok 2 - Instalowanie PHP

Najpierw musisz zdecydować o wersji PHP, aby zainstalować w systemie. Możesz także zainstalować wiele wersji PHP w jednym systemie. Obecnie repozytorium zawiera PHP 5.6, php 7.1, 7.2, 7.3, 7.4 i PHP 8.0, 8.1. Poniższa instrukcja zainstaluje PHP 8.1. Zmień wersję zgodnie z Twoimi wymaganiami.

Ondrej/PHP PPA zawiera wszystkie wersje PHP dla systemów Ubuntu. Więc dodaj to repozytorium w swoim systemie z poleceniem poniżej:

sudo add-apt-repozytory PPA: ondrej/php  

Teraz zaktualizuj pamięć podręczną apt i zainstaluj PHP 8.1.

Aktualizacja sudo apt  sudo apt instal PHP8.1  

To zainstaluje PHP w systemie Ubuntu wraz z użytecznymi rozszerzeniami PHP.

Krok 3 - Zainstaluj i skonfiguruj PHP -FPM

PHP-FPM (FASTCGI Process Manager) to alternatywna implementacja PHP FASTCGI z dodatkowymi funkcjami. Serwer WWW Nginx wymagał PHP-FPM do przetwarzania skryptów PHP.

Aby zainstalować PHP-FPM, uruchom następujące polecenie na podstawie zainstalowanej wersji PHP:

sudo apt instal PHP8.1-fpm  

Po zakończeniu instalacji sprawdź status usługi:

SUDO Systemctl Status Php8.1-fpm  
● PHP8.1-fpm.Usługa - PHP 8.1 FastCGI Process Manager Załadowany: Załadowany (/lib/systemd/system/php8.1-fpm.praca; włączony; PREDETPER PRESET: Włączony) Active: Active (Uruchamianie) od THU 2022-04-07 06:26:55 UTC; 11 minut temu Dokumenty: Man: PHP-FPM8.1 (8) Proces: 108650 execTartPost =/usr/lib/php/php-fpm-socket-helper instalacja/run/php/php-fpm.skarpet/etc/php/8.1/fpm/basen.D/www.Conf 81 (kod = wyjazd, status = 0/Success) Główny PID: 108647 (php-fpm8.1) Status: „Procesy Aktywne: 0, bezczynność: 2, żądania: 2, powolny: 0, ruch: 0req/s” zadania: 3 (limit: 1034) Pamięć: 10.7M CPU: 88MS CGroup: /System.Slice/Php8.1-fpm.Service ├─108647 "php-fpm: proces główny (/etc/php/8.1/fpm/php-fpm.conf) ├─108648 "php-fpm: pula www └─108649" php-fpm: pula www 07 06:26:55 Ubuntu2204 Systemd [1]: Rozpoczęcie php 8.1 FastCGI Process Manager… 07 kwietnia 06:26:55 Ubuntu2204 Systemd [1]: Rozpoczął PHP 8.1 FastCGI Process Manager. 

W kroku 6 skonfigurujemy wirtualny host Nginx z PHP-FPM, aby obsługiwać aplikacje PHP.

Krok 4 - Instalowanie MySQL

Domyślne repozytoria Ubuntu zawierają MySQL 8.0. Które można bezpośrednio zainstalować za pomocą menedżera pakietów. Aby zainstalować dostępną wersję MySQL Server, wykonaj następujące polecenie.

sudo apt-get instaluj mysql-server  

Po zakończeniu instalacji możesz zabezpieczyć serwer MySQL, wykonując następujące polecenie.

sudo mysql_secure_instalation  

Zapytałoby to o kilka pytań w celu zabezpieczenia serwera MySQL.

  1. Naciśnij „Y”, aby włączyć wtyczkę sprawdzania hasła. Umożliwi to ustawienie ścisłej zasady haseł dla kont użytkowników.
    Komponent sprawdzania hasła może być używany do testowania haseł i poprawy bezpieczeństwa. Sprawdza siłę hasła i umożliwia użytkownikom ustawienie tylko tych haseł, które są wystarczająco bezpieczne. Czy chciałbyś skonfigurować komponent sprawdzania hasła? Naciśnij y | y dla tak, każdy inny klucz dla nie: y 
  2. Wybierz poziom złożoności hasła. Przeczytaj wszystkie 3 opcje i wybierz jedną. Dla serwerów produkcyjnych zalecamy wybór MOCNY polityka.
    Niska długość> = 8 Średnia długość> = 8, liczba, mieszana obudowa i znaki specjalne silna długość> = 8, numeryczna, mieszana obudowa, znaki specjalne i plik słownika Wprowadź 0 = niski, 1 = Medium i 2 = silny: 1 
  3. Wprowadź nowe hasło i ponownie wejdź. Upewnij się, że pasuje do poziomu złożoności, jak opisano powyżej.
    Nowe hasło: ************* Ponownie wejdź nowe hasło: ************* 
  4. Naciśnij „y”, aby kontynuować podane hasło.
    Czy chcesz kontynuować podane hasło?(Naciśnij Y | Y dla tak, każdy inny klucz dla nie): y 
  5. Usuń domyślny anonimowych użytkowników z MySQL Server:
    Usuń anonimowych użytkowników? (Naciśnij Y | Y dla tak, każdy inny klucz dla nie): y 
  6. Wyłącz logowanie root od zdalnych systemów
    Zdalnie odrzucaj logowanie root? (Naciśnij Y | Y dla tak, każdy inny klucz dla nie): y 
  7. Usuń testowy formularz bazy danych mysql utworzony domyślnie podczas instalacji.
    Usuń testową bazę danych i dostęp do niej? (Naciśnij Y | Y dla tak, każdy inny klucz dla nie): y 
  8. Załaduj wszystkie uprawnienia, aby natychmiast zastosować powyższe zmiany.
    Załaduj teraz tabele uprawnień? (Naciśnij Y | Y dla tak, każdy inny klucz dla nie): y 

Zabezpieczyłeś serwer MySQL na stosie lampy na Ubuntu 22.04 System Linux.

Pamiętaj, że powyższy zestaw haseł dla konta root jest używany tylko dla użytkowników zdalnych. Aby zalogować się z tego samego systemu, po prostu wpisz Mysql na terminalu.

sudo mysql  
Witamy w MySQL Monitor. Polecenia kończą się; lub \ g. Twój identyfikator połączenia MySQL to 14 serwerowa wersja: 8.0.28-0ubuntu4 (Ubuntu) Copyright (c) 2000, 2022, Oracle i/lub jej podmioty stowarzyszone. Oracle jest zarejestrowanym znakiem towarowym Oracle Corporation i/lub jej podmiotów stowarzyszonych. Inne nazwy mogą być znakami towarowymi ich właścicieli. Typ „Pomoc”; lub „\ h”, aby uzyskać pomoc. Typ „\ c”, aby wyczyścić bieżącą instrukcję wejściową. mysql> 

Wpisz „Zachowaj”, aby wyjść z powłoki MySQL i powrócić do terminalu systemowego.

Krok 5 - Instalowanie dodatkowych pakietów

Może być również konieczne instalowanie modułów takich jak MySQL i inne rozszerzenia dla PHP na podstawie wymagań aplikacji. Użyj następującego polecenia, aby znaleźć nasze dostępne rozszerzenia PHP.

sudo apt wyszukiwanie php8.1-*  

Powyższe polecenie wyświetli wszystkie dostępne moduły PHP7 do instalacji, rozpocznijmy instalację modułów.

sudo apt instal PHP8.1-MYSQL PHP8.1-CURL PHP8.1-xml  

Może być również konieczne zainstalowanie innych wymaganych rozszerzeń PHP w systemie.

Krok 6 - Skonfiguruj Nginx VirtualHost

Na koniec wykonaj konfigurację wirtualnego hosta Nginx. W tym przykładzie edytujemy domyślny plik konfiguracyjny.

sudo nano/etc/nginx/witryny-obserwowane/domyślne  

i wprowadzaj zmiany jak poniżej.

serwer Słuchaj 80; root/var/www/przykład.com; indeks indeksu.php; Przykład_nazowy Server_name.com www.przykład.com; lokalizacja / try_files $ uri $ uri / = 404;  Lokalizacja ~ \.php $ obejmują fragmenty/fastcgi-php.conf; fastcgi_pass unix:/run/php/php8.1-fpm.skarpetka;  

W powyższym pliku konfiguracyjnym poszukaj Lokalizacja ~ \.php $ Sekcja. Który jest wymagany do obsługi skryptów PHP za pośrednictwem serwera Nginx.

Musisz dokonać tych samych zmian we wszystkich skonfigurowanych wirtualnych hostach.

Krok 7 - Sprawdź konfigurację

Pomyślnie zakończyłeś instalację Nginx, MySQL i PHP na Ubuntu 22.04 System Linux. Aby zweryfikować integrację PHP z Nginx, utwórz skrypt PHP (Przykład: Info.php) w ​​dokumencie witryny root i napisz poniższą zawartość.

123

Teraz uzyskaj dostęp do tego pliku w przeglądarce internetowej. Tak będzie, aby wszystkie szczegóły dotyczące wersji i instalacji.

http: // server-ip-or-domain-name/info.php 
Uruchamianie skryptu PHP z Nginx i PHP-FPM

Wniosek

Ten samouczek pomógł ci skonfigurować stos LEMP (Linux, Nginx, MySQL i PHP) na Ubuntu 22.System 04 LTS. Teraz możesz hostować aplikacje internetowe oparte na PHP na swoim serwerze.